SQL: DELETE, WHERE NOT EXISTS oder wie?

Guten Tag

Ich habe hier zwei Tabellen tComment und tDetail.
Beziehung: tComment (1):frowning:n) tDetail

Attribute tComment: CommentID (Primary Key), Comment, User, Time

Attribute tDetail: DeatilID (Primary Key), CommentID (Foreign Key), Type, Value, Node, Priority, …

Problem: Ich will alle Einträge aus tComment löschen, deren CommentId nicht als Fremdschlüssel in der Tabelle tDetail verwendet wird. Wie mache ich das?

 DELETE FROM tComment WHERE CommentId = ( … oder NOT EXISTS oder EXISTS …?

    
    
    Grüsse, Olli

Hallo olli,
versuche mal so:

DELETE FROM tComment WHERE NOT commentID IN (SELECT DISTINCT commentID FROM tDetail)

Vorher besser sichern, falls was schiefgeht …

Viel Erfolg
Klaus

Hallo Klaus

Habe ein Backup der DB in einer VM wieder hergestellt um zu testen. Hat funktioniert. Vielen Dank!

Grüsse, Olli