Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie kann ich in MySQL einen FULL JOIN-Effekt erzielen?

DDD
Freigeben: 2024-11-20 00:18:03
Original
582 Leute haben es durchsucht

How can I achieve a FULL JOIN effect in MySQL?

MySQL FULL JOIN?

In MySQL wird der FULL JOIN-Vorgang nicht direkt unterstützt. Es ist jedoch möglich, mit einer Kombination aus LEFT JOIN und RIGHT JOIN ein ähnliches Ergebnis zu erzielen. So können Sie es machen:

SELECT
    t1.column1,
    t2.column2
FROM
    table1 AS t1
LEFT JOIN
    table2 AS t2
ON
    t1.id = t2.id
UNION ALL
SELECT
    t1.column1,
    NULL
FROM
    table1 AS t1
RIGHT JOIN
    table2 AS t2
ON
    t1.id = t2.id
WHERE
    t2.id IS NULL
Nach dem Login kopieren

In dieser Abfrage ruft der LEFT JOIN alle Zeilen aus Tabelle1 ab und ordnet sie basierend auf der ID-Spalte den entsprechenden Zeilen aus Tabelle2 zu. Der RIGHT JOIN ruft alle Zeilen aus Tabelle2 ab und ordnet sie den entsprechenden Zeilen aus Tabelle1 zu. Der UNION ALL-Operator kombiniert die Ergebnisse beider Verknüpfungen.

Angenommen, wir haben zwei Tabellen, „Personen“ und „Bestellungen“, mit den folgenden Daten:

Persons
P_Id LastName FirstName
1 Hansen Ola
2 Pettersen Kari
3 Svenson Tove
Orders
OrderNo P_Id
22456 1
24562 1
77895 2
44678 2
34764 3

An Erhalten Sie mit der obigen Abfrage das folgende Ergebnis:

LastName FirstName OrderNo
Hansen Ola 22456
Hansen Ola 24562
Pettersen Kari 77895
Pettersen Kari 44678
Svenson Tove 34764

Ersetzen Sie einfach Tabelle1 durch „Personen“ und Tabelle2 durch „Bestellungen“. die Abfrage und führen Sie sie aus.

Das obige ist der detaillierte Inhalt vonWie kann ich in MySQL einen FULL JOIN-Effekt erzielen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage