Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk menggunakan fungsi FULL OUTER JOIN dalam MySQL untuk mendapatkan penyatuan dua jadual

Bagaimana untuk menggunakan fungsi FULL OUTER JOIN dalam MySQL untuk mendapatkan penyatuan dua jadual

王林
王林asal
2023-07-26 17:45:132479semak imbas

Cara menggunakan fungsi FULL OUTER JOIN dalam MySQL untuk mendapatkan gabungan dua jadual

Dalam MySQL, fungsi FULL OUTER JOIN ialah operasi cantum yang berkuasa yang menggabungkan cantuman dalam dan cantuman luar. Ia boleh digunakan untuk mendapatkan penyatuan dua jadual, iaitu, menggabungkan semua data dalam dua jadual ke dalam set hasil tunggal. Artikel ini akan memperkenalkan penggunaan fungsi FULL OUTER JOIN dan menyediakan beberapa contoh kod untuk membantu pembaca memahami dengan lebih baik. Sintaks fungsi

FULL OUTER JOIN adalah seperti berikut:

SELECT *
FROM table1
FULL OUTER JOIN table2
ON table1.column = table2.column;

Dalam sintaks ini, jadual1 dan jadual2 ialah dua jadual yang akan disambungkan, lajur ialah keadaan sambungan, dan * bermaksud untuk memilih semua lajur.

Katakan kita mempunyai dua jadual: Jadual A dan Jadual B. Struktur dan datanya adalah seperti berikut:

Jadual A:

+----+--------+
| id | name   |
+----+--------+
| 1  | Tom    |
| 2  | Jerry  |
| 3  | Alice  |
+----+--------+

Jadual B:

+----+--------+
| id | name   |
+----+--------+
| 1  | Peter  |
| 2  | Jerry  |
| 4  | Bob    |
+----+--------+

Sekarang kita ingin mendapatkan gabungan Jadual A dan Jadual B.

Contoh kod menggunakan fungsi FULL OUTER JOIN adalah seperti berikut:

SELECT *
FROM tableA
FULL OUTER JOIN tableB
ON tableA.id = tableB.id;

Selepas melaksanakan kod di atas, kita akan mendapat keputusan berikut:

+------+---------+---------+
| id   | name    | name    |
+------+---------+---------+
| 1    | Tom     | Peter   |
| 2    | Jerry   | Jerry   |
| 3    | Alice   | NULL    |
| NULL | NULL    | Bob     |
+------+---------+---------+

Seperti yang dapat dilihat daripada keputusan di atas, fungsi FULL OUTER JOIN menggabungkan kesemuanya. nilai dalam Jadual A dan Jadual B Data disertakan. Ia menggabungkan baris dengan nilai yang sama dalam dua jadual berdasarkan syarat cantum, dan mengisi lajur yang sepadan dengan NULL jika tiada baris yang sepadan dalam jadual.

Dalam contoh di atas, baris dengan id 1 dan 2 terdapat dalam kedua-dua jadual, jadi ia digabungkan menjadi satu baris. Baris dengan id 3 hanya wujud dalam jadual A, dan baris dengan id 4 hanya wujud dalam jadual B, jadi ia dipaparkan sebagai baris yang berasingan.

Selain PILIH *, kami juga boleh menentukan lajur yang diperlukan secara pilihan seperti berikut:

SELECT tableA.id, tableA.name, tableB.name
FROM tableA
FULL OUTER JOIN tableB
ON tableA.id = tableB.id;

Selepas melaksanakan kod di atas, kami akan mendapat keputusan berikut:

+------+---------+---------+
| id   | name    | name    |
+------+---------+---------+
| 1    | Tom     | Peter   |
| 2    | Jerry   | Jerry   |
| 3    | Alice   | NULL    |
| NULL | NULL    | Bob     |
+------+---------+---------+

Daripada contoh di atas, kita dapat melihat bagaimana Gunakan FULL OUTER JOIN berfungsi untuk mendapatkan gabungan dua jadual. Ia boleh membantu kami menggabungkan data dalam dua jadual bersama-sama, menjadikan pemprosesan data lebih mudah.

Untuk meringkaskan, fungsi FULL OUTER JOIN ialah operasi gabungan yang berkuasa dalam MySQL untuk mendapatkan penyatuan dua jadual. Ia boleh menggabungkan semua data daripada dua jadual ke dalam satu set hasil dan menggabungkan baris dengan nilai yang sama berdasarkan syarat gabungan. Melalui pengenalan dan contoh kod artikel ini, saya harap ia dapat membantu pembaca lebih memahami penggunaan dan kemahiran penggunaan fungsi FULL OUTER JOIN.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan fungsi FULL OUTER JOIN dalam MySQL untuk mendapatkan penyatuan dua jadual. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn