Löschen verwaister Datensätze
PhilS
Gesendet: 07.01.17 14:14
Betreff: RE: Löschen verwaister Datensätze


Veteran

Beiträge: 136
10025

svru - 07.01.17 06:55 Selbstverständlich ist in der Löschabfrage "der Stern aus Tabelle A" zum Löschen angegeben und "das Primärschlüsselfeld aus Tabelle B" als Bedingung: DELETE A.* FROM A LEFT JOIN B ON A.Id = B.Id WHERE B.ID Is Null; Sven

Ich sehe ehrlich gesagt keinen Grund warum deine Abfrage nicht funktionieren sollte.

Du kannst mal folgendes als Alternative ausprobieren:

DELETE *
FROM A
WHERE NOT EXISTS (SELECT 'x'
                    FROM B
                    WHERE A.Id = B.Id);

Das Ergebnis wäre genau das gleiche. Von der Performance ist deine Variante vermutlich in vielen Fällen besser. 

 


-----
https://codekabinett.com/
Top of the page Bottom of the page