Heim  >  Artikel  >  Datenbank  >  Häufig verwendete grundlegende Operationssyntax von MySQL (8)~~Zusammenführungsergebnisse mehrerer Tabellenabfragen und Inner-Join-Abfrage [Befehlszeilenmodus]

Häufig verwendete grundlegende Operationssyntax von MySQL (8)~~Zusammenführungsergebnisse mehrerer Tabellenabfragen und Inner-Join-Abfrage [Befehlszeilenmodus]

黄舟
黄舟Original
2017-03-03 14:17:281530Durchsuche

1. Verwenden Sie Union und Union All, um zwei Abfrageergebnisse zusammenzuführen: Feldnamen aus Tabellenname1 auswählen, Feldnamen aus Tabellenname2 auswählen


Beachten Sie, dass dieser Vorgang muss Stellen Sie sicher, dass die Felder in den beiden Tabellen gleich sind und auch die Felddatentypen gleich sind. Darüber hinaus werden bei Verwendung von Union doppelte (identische) Datensätze entfernt, Union All jedoch nicht.

Hinweis: Die folgenden Join-Abfragen beinhalten das Konzept des kartesischen Produkts. Wenn also zwei Tabellen vorhanden sind, hat die erste n Datensätze und die andere Tabelle m Datensätze das kartesische Produkt ist n*m; wenn die Anzahl der Felder in der ersten Tabelle a ist und die Anzahl der Felder in der anderen Tabelle b ist, dann ist die Anzahl der Felder, die durch das Descartes-Produkt erhalten wird, a+b.

2. Natürliche Verknüpfung verwenden: Voraussetzung ist, dass die beiden Tabellen dieselben Felder haben: (Dieser Vorgang entfernt doppelte Felder)


Für diese Abfrage verstehe ich Folgendes: Behalten Sie die Daten bei, die in den zugehörigen Feldern (wie hier „department_id“) in diesen beiden Tabellen vorhanden sind, und entfernen Sie die Daten, die nur in einer Tabelle vorhanden sind:


Wie im obigen Inhalt gezeigt, gibt es vier Datenteile in Unternehmen und 7 Datenteile in Emp. Daher kommen nur sechs Datenteile heraus, egal welches vorne platziert wird, da die part_id in ist company ist 4, aber nicht in emp, und die part_id in emp ist 5. , und es gibt keine in company.

3. Innerer Join bei äquivalenter Join-Abfrage:


Nach meinem Verständnis besteht der Unterschied zwischen dieser Operation und dem oben genannten natürlichen Join darin wird nicht entfernt. Wiederholte Felder sind flexibler und erfordern keine Felder mit demselben Feldnamen:


4. Innerer Join bei ungleichem Wert-Join-Abfrage:


Für diese Abfrage handelt es sich meines Wissens nach um das Komplement der „="-Abfrage, d. h. um die Ergebnismenge dieser Abfrage = Ergebnismenge des kartesischen Produkts minus „ ="Der Ergebnissatz der Abfrage; in diesem Beispiel hat das Unternehmen 4 Datensätze, emp hat 7 Datensätze und das kartesische Produkt ist 4*7=28 Datensätze;"="Das Ergebnis der Abfrage sind 6 Datensätze, einmal" != "Die Abfrage sollte sich auf die verbleibenden 22 Datensätze beziehen.

5. Eine andere Art von Abfrage kann aus der obigen Operation erweitert werden: Wortverbindungsabfrage, das heißt, es gibt tatsächlich nur eine Tabelle, und sie kann durch Umbenennen als zwei verwendet werden:


Wie Sie sehen, sollte es laut kartesischem Produkt 4*4=16 Ergebnisse geben, aber aufgrund der Bedingungen wurden vier Ergebnisse herausgefiltert.

Das Obige ist die allgemeine grundlegende Operationssyntax von MySQL (8)~~Der Inhalt der Ergebnisse der Zusammenführung mehrerer Tabellen und der Inner-Join-Abfrage [Befehlszeilenmodus] finden Sie unter PHP chinesische Website (www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn