English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

SQL-Daten löschen (DELETE-Anweisung)

In diesem Tutorial werden Sie lernen, wie Sie mit SQL Aufzeichnungen aus Datenbanktabellen löschen.

Daten aus der Tabelle löschen

WieINSERTAnweisung, um Aufzeichnungen in die Tabelle einzufügen, können Sie auch die Anweisung verwenden, um Aufzeichnungen aus der Tabelle zu löschen DELETE.

Syntax

Die DELETE-Anweisung wird verwendet, um eine oder mehrere Zeilen aus der Tabelle zu löschen.

DELETE FROM table_name WHERE condition;

Warnung:In der DELETE-AnweisungWHEREWHERE-Klausel spezifiziert die Aufzeichnungen, die gelöscht werden sollen. Es ist optional, aber wenn Sie die WHERE-Klausel auslassen oder vergessen, werden alle Aufzeichnungen dauerhaft aus der Tabelle gelöscht.

Lassen Sie uns vonTabelle erstellenKapitelErstellendespersonsDatenbanktabelle einige Aufzeichnungen löschen.

Angenommen, wirPersonnel (persons)Die aktuelle Tabelle hat die folgenden Aufzeichnungen:

+----+--------------------+------------+-------------+
| id | name | birth_date | phone |
+----+--------------------+------------+-------------+
|  1 | Peter Wilson | 1990-07-15 | 0711-020361 |
|  2 | Carrie Simpson | 1995-05-01 | 0251-031259 |
|  3 | Victoria Ashworth | 1996-10-17 | 0695-346721 |
|  4 | George Bailey | 1993-03-05 | 0897-034214 |
|  5 | Norman Bates | 1999-08-25 | 0522-556721 |
+----+--------------------+------------+-------------+

Zeilen nach den Bedingungen löschen

Das folgende Statement wird die Aufzeichnungen löschen, dieidgrößer als3desPersonenpersons)Tabelle wird Zeilen gelöscht.

DELETE FROM persons WHERE id > 3;

Nach der Ausführung der Abfrage:Personnel (persons)Tabelle wird wie folgt dargestellt:

+----+--------------------+------------+-------------+
| id | name | birth_date | phone |
+----+--------------------+------------+-------------+
|  1 | Peter Wilson | 1990-07-15 | 0711-020361 |
|  2 | Carrie Simpson | 1995-05-01 | 0251-031259 |
|  3 | Victoria Ashworth | 1996-10-17 | 0695-346721 |
+----+--------------------+------------+-------------+

Note:Please refer toSQL WHERE clausetutorials to learn how to form complex queries based on multiple conditions when deleting records from a table.

Delete all data

Similarly, as mentioned above, if you do not specify a clause in the WHERE statement, all rows in the table will be deleted. However, the target table itself will not be deleted, which means that the table structure, attributes, and indexes will remain unchanged, but the data in the table will be cleared.

The following statement will deletePersonnel (persons)All records in the table:

DELETE FROM persons;

Now, if you try to delete fromPersonnel (persons)in the tableSelect or Query RecordsIf so, an empty result set will be obtained.