MySQL-Methode zum Ermitteln des Differenzsatzes: 1. Verwenden Sie „not exist“, um den Differenzsatz der beiden Tabellen zu filtern. 2. Verwenden Sie den nach der LEFT JOIN-Verbindung generierten leeren Feldwert, um den Differenzsatz der beiden Tabellen zu filtern.
Die Betriebsumgebung dieses Artikels: Windows 7-System, MySQL-Version 8.0, Dell G3-Computer.
Wie finde ich den in MySQL festgelegten Unterschied?
Wie frage ich inkonsistente Datensätze in zwei Tabellen mit unterschiedlicher Anzahl von Feldern in MySQL ab? Im Allgemeinen kann NOT EXISTS (Nichtexistenzklausel) oder LEFT JOIN zum Generieren verwendet werden Die linke (rechte) Verbindung verwendet leere Feldwerte, um den Unterschied zwischen den beiden Tabellen zu filtern Wenn kein Index vorhanden ist, wird er auf einer großen Datentabelle ausgeführt. Bei der Verwendung von Datentabellen ist die Betriebseffizienz äußerst schlecht, daher sollten Sie die Verwendung zu diesem Zeitpunkt vermeiden Um den Differenzsatz zu finden, führt die Notwendigkeit, zwei Tabellenverknüpfungen zu implementieren, zu einem kartesischen Effekt. Die Datensatzzeilen des Ausgabesatzes können zunehmen Die Viele-zu-Viele-Situation sollte vor dem Herstellen einer Verbindung in eine Viele-zu-Eins-Situation verarbeitet werden, andernfalls ist der Ausgabedatensatz möglicherweise falsch.
SELECT * FROM smd_employee t1 WHERE NOT EXISTS ( SELECT 1 FROM asd_user_account t2 WHERE t2.u_phone = t1.employee_phone );
Wenn Indizes verfügbar sind, ist „Not Exists“ effizienter als „Left Join“. Im Gegenteil: „Left Join“ ist effizienter
Das obige ist der detaillierte Inhalt vonSo finden Sie den in MySQL festgelegten Unterschied. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!