[MSSQL] Doppelte Datensätze löschen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • [MSSQL] Doppelte Datensätze löschen

    Hallo,

    wie kann man Dublikate von Datensätzen aus einer Tabelle löschen?

    Normalerweise würde ich das ja so machen:
    PHP Code:
    DELETE FROM gnanlart
    Where db_id NOT IN
        
    (SELECT MIN(X.db_id)
            
    FROM gnanlart As X
            GROUP BY X
    .identX.bezeichnungX.beschreibung
    Diese Methode geht in meinem Fall aber nicht, weil die db_id auch identsich ist.

    Was gibt es da für eine Möglichkeit alle Dublikate eines Datensatzes zu löschen.
    Gibt es da eventuell sogar eine Funktion vom SQL Server die das automatisch prüft?

    Gruß, spikis

  • #2
    http://support.microsoft.com/default...b;en-us;139444 ?

    Comment


    • #3
      wie hast du es denn geschafft komplett identische datensätze in ne db zu bekommen? wenn sogar die ID doppelt ist, dann hast du ja gar keinen primary key definiert, der dir unter anderem genau das verhindert?
      ich geh zum lachen in den keller

      Comment


      • #4
        Also wenn das Dublikat dieselbe ID hast und diese ID ein identifizierendes Feld ist, vielleicht sogar als Primärschlüssel fungiert, dann hast du einen Designfehler in deiner Datenbank.

        Dann dann verstößt du gegen die Referenzintegritätsregel.
        Also solltest du dein DB-Design nochmal überdenken.
        ------------
        man wächst mit seinen aufgaben

        Comment

        Working...
        X