Es gibt zwei Möglichkeiten, Daten in MySQL zu löschen: eine ist die DELETE-Anweisung und die andere ist die TRUNCATE TABLE-Anweisung. Mit der DELETE-Anweisung können die zu löschenden Datensätze über WHERE ausgewählt werden. Mit TRUNCATE TABLE werden alle Datensätze in der Tabelle gelöscht. Daher ist die DELETE-Anweisung flexibler. Wenn Sie alle Datensätze in einer Tabelle löschen möchten, können Sie die folgenden zwei Methoden verwenden: LÖSCHEN AUS Tabelle1 TRUNCATE TABLE Tabelle1 Die TABELLE im zweiten Datensatz ist optional. Wenn Sie einige Datensätze in einer Tabelle löschen möchten, können Sie nur die DELETE-Anweisung verwenden. LÖSCHEN AUS Tabelle1, WO ...; Wenn DELETE keine WHERE-Klausel hat, ist es dasselbe wie TRUNCATE TABLE, aber es gibt einen Unterschied zwischen ihnen: DELETE kann die Anzahl der gelöschten Datensätze zurückgeben, während TRUNCATE TABLE 0 zurückgibt. Wenn eine Tabelle ein Auto-Increment-Feld besitzt, wird nach dem Löschen aller Datensätze mit TRUNCATE TABLE und DELETE ohne WHERE-Klausel der Startwert des Auto-Increment-Felds auf 1 zurückgesetzt. Wenn Sie dies nicht möchten, können Sie in der DELETE-Anweisung ein permanentes WHERE hinzufügen, beispielsweise WHERE 1 oder WHERE true. LÖSCHEN AUS Tabelle1, WO 1; Bei der Ausführung scannt die obige Anweisung jeden Datensatz. Es besteht jedoch kein Vergleich, da diese WHERE-Bedingung immer wahr ist. Obwohl dadurch der Maximalwert der automatischen Inkrementierung beibehalten werden kann, werden alle Datensätze gescannt, sodass die Ausführungskosten viel höher sind als bei DELETE ohne WHERE-Klausel. Der größte Unterschied zwischen DELETE und TRUNCATE TABLE besteht darin, dass DELETE die zu löschenden Datensätze über die WHERE-Anweisung auswählen kann, die Ausführungsgeschwindigkeit jedoch nicht hoch ist. Nachdem Truncate gelöscht wurde, wird das MySQL-Protokoll nicht aufgezeichnet und die Daten können nicht wiederhergestellt werden. Der Effekt von „Löschen“ ähnelt dem Löschen aller Datensätze in der MySQL-Tabelle nacheinander, bis alle gelöscht sind. „Abschneiden“ hingegen entspricht dem Beibehalten der Struktur der MySQL-Tabelle und dem Neuerstellen der Tabelle, und alle Zustände entsprechen denen der neuen Tabelle. Es kann auch die Anzahl der gelöschten Datensätze zurückgeben. TRUNCATE TABLE kann die angegebenen Datensätze jedoch nicht löschen und kann die gelöschten Datensätze nicht zurückgeben. Die Ausführung erfolgt jedoch sehr schnell. Im Gegensatz zu Standard-SQL-Anweisungen unterstützt DELETE ORDER BY- und LIMIT-Klauseln. Mit diesen beiden Klauseln können wir die zu löschenden Datensätze besser kontrollieren. Wenn wir beispielsweise nur einen Teil der von der WHERE-Klausel herausgefilterten Datensätze löschen möchten, können wir LIMIT verwenden. Wenn wir die letzten paar Datensätze löschen möchten, können wir ORDER BY und LIMIT zusammen verwenden. Angenommen, wir möchten die ersten 6 Datensätze in der Benutzertabelle löschen, deren Name „Mike“ ist. Sie können die folgende DELETE-Anweisung verwenden: LÖSCHEN VON Benutzern, WO Name = ‚Mike‘ LIMIT 6; Im Allgemeinen ist MySQL nicht sicher, welche 6 Datensätze gelöscht werden. Um sicherzugehen, können wir ORDER BY verwenden, um die Datensätze zu sortieren. Zusammenfassen Dies ist der gesamte Inhalt dieses Artikels zum Löschen von Tabellendaten in MySQL. Ich hoffe, er ist für alle hilfreich. Interessierte Freunde können sich hier informieren: Detaillierte Erläuterung der MySQL-Vorbereitungsprinzipien, mehrere wichtige MySQL-Variablen, Analyse der wichtigsten Punkte der ORACLE-SQL-Anweisungsoptimierungstechnologie usw. Wenn Sie Fragen haben, können Sie jederzeit eine Nachricht hinterlassen und der Herausgeber wird Ihnen rechtzeitig antworten. Das könnte Sie auch interessieren:
|
<<: Detaillierte Erläuterung zum Upgrade von Python und zur Installation von Pip unter Linux
>>: CocosCreator allgemeines Framework-Design Ressourcenmanagement
0. Einleitung Was ist die ibdata1-Datei? ibdata1 ...
Analysieren Sie vier gängige Methoden und Prinzip...
Manchmal kommt es in einem Projekt aus irreversib...
Manchmal müssen wir Server stapelweise bedienen, ...
Inhaltsverzeichnis Tomcat-Einführung Tomcat-Berei...
Beim Entwickeln einer Website müssen Sie häufig e...
binlog ist eine binäre Protokolldatei, die alle D...
Die Farbdarstellung auf einer Webseite wird von ve...
Inhaltsverzeichnis Was sind Refs 1. Referenzen vo...
Es gibt im Internet viele Artikel zur MySQL-Insta...
Prinzip Setzen Sie beim Schweben einen Schatten a...
Die Schlüsselcodes lauten wie folgt: Code kopieren...
Inhaltsverzeichnis Vorwort 1. Anwendungsbeispiele...
Inhaltsverzeichnis So starten Sie mysqld Methode ...
1. catalina.bat muss auf UTF-8 eingestellt sein. ...