Grundkurs SQL

6.4  DELETE-Anweisung

Das SQL-Statement DELETE wird zum Löschen von Zeilen einer Tabelle benutzt. Dazu muss genau spezifiziert werden, welche Zeile(n) gelöscht werden soll(en). Wir schauen uns zunächst wieder an, wie die allgemeine Notation lautet:

DELETE FROM tabellenName
WHERE  Spalte_3 = Wert

Wie bei der INSERT-Anweisung und auch beim UPDATE, kann auch beim DELETE eine zweite Tabelle herangezogen werden, um Einträge mit bestimmten Eigenschaften zu nutzen.

DELETE FROM tabelle_1
            INNER JOIN tabelle_2
            ON tabelle_1.Spalte_3 = tabelle_2.Spalte_1
WHERE  tabelle_2.Spalte_4 = Wert

Ein Beispiel in unserer Personaldatenbank wäre das Löschen aller Personen mit dem Titel 'Dipl.-BW' aus der Mitarbeitertabelle.

DELETE tbl_mitarbeiter
FROM   tbl_mitarbeiter
       INNER JOIN  tbl_titel
       ON tbl_mitarbeiter.titel_ID = tbl_titel.titel_ID
WHERE  tbl_titel.titel='Dipl.-BW'

Das Löschen muss noch einmal mit Ja bestätigt werden und dann wird dem Nutzer angezeigt, wie viele Datensätze von dem DELETE betroffen waren.

Bei dieser Anweisung werden die Tabellen im FROM zum Durchsuchen genutzt und gelöscht wird nur aus der Tabelle, die nach dem DELETE steht.