Der Zweck dieses Tutorials besteht darin, zu verstehen. Wenn Sie neu in MySQL sind, berücksichtigen Sie unsere anderen Tutorials, wie z.
Lassen Sie uns anfangen.
Grundnutzung: Löschen mit innerem Join
Die erste Löschmethode, über die wir diskutieren, ist die Verwendung der MySQL -Löschklausel in einer inneren Join -Anweisung, um Daten aus Zeilen zu entfernen, die einer anderen Tabelle entsprechen.
Die allgemeine Syntax zur Implementierung einer solchen Abfrage ist unten dargestellt:
Löschen.col = tbl2.col wo [Zustand];Lassen Sie mich Ihnen versichern, dass es einfacher ist als es aussieht. Lassen Sie mich erklären:
Wir beginnen mit der Angabe der Tabellen, aus denen wir die Daten entfernen möchten. Tabellen werden zwischen dem Löschen und der Klausel angegeben.
Im zweiten Teil geben wir die Bedingung für die übereinstimmenden Zeilen in den festgelegten Tabellen an. Zum Beispiel:
TBL1.col = tbl2.colSchließlich setzen wir den Bedingung, der die Zeilen in den angegebenen Tabellen bestimmt, die gelöscht werden sollen.
Beispiel Anwendungsfall
Lassen Sie mich ein Beispiel verwenden, um zu veranschaulichen, wie wir die Löschklausel und die innere Verbindung verwenden können, um Zeilen aus mehreren Tabellen zu entfernen. Betrachten Sie die folgenden Fragen:
Schema Gesellschaft schaffen;Sobald wir solche Daten haben, können wir veranschaulichen, wie Sie Löschen mit innerem Join verwenden, wie in der folgenden Abfrage gezeigt:
Gesellschaft löschen.Benutzer, Gesellschaft.Kontakte aus der Gesellschaft.Benutzer Innere Join -Kontakte auf user_id = home_id wobei user_id = 3;In der obigen Abfrage werden das Ergebnis angezeigt, wie unten gezeigt:
Zwei in 7 ms betroffene Zeilen, was darauf hinweist, dass zwei Zeilen entfernt wurden.
Löschen mit links join
Die zweite Löschmethode, die wir diskutieren werden, besteht darin, den linken Join zu verwenden. Die allgemeine Syntax für diesen Löschentyp ist wie unten gezeigt:
Löschen Sie TBL1 aus TBL1 Links Join TBL2 auf TBL1.col = tbl2.col wo tble.col ist null;Für das Löschen mit dem linken Join geben wir nur eine Tabelle an, die den inneren Join-Jou, in dem wir zwei Tabellen angegeben haben.
Betrachten Sie die gesamte Abfrage unten:
Nutzen die Gesellschaft;Sobald wir die obige Abfrage ausgeführt haben, ist der Benutzer, dessen Adresse nach dem Löschen des Join null ist, und das Ausgabeergebnis ist wie unten gezeigt:
Abschluss
In diesem Tutorial haben wir besprochen, wie MySQL Delete mit Join -Anweisungen verwendet wird, um Daten aus mehreren Tabellen zu löschen.