Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menyertai Dua Jadual dengan Berkesan dalam MySQL Menggunakan LEFT JOIN?
Pangkalan data MySQL dengan cekap menyertai dua jadual: penjelasan terperinci LEFT JOIN
Dalam pengurusan pangkalan data, gabungan jadual ialah teknologi utama untuk menyepadukan data daripada pelbagai sumber. Ia membolehkan anda mendapatkan semula maklumat yang berkaitan daripada jadual yang berbeza, mewujudkan paparan komprehensif data anda. Artikel ini akan membimbing anda melalui proses menyertai dua jadual dalam MySQL, membantu anda memanfaatkan sepenuhnya penyepaduan data.
Huraian Masalah
Andaikan anda mempunyai dua jadual:
Matlamat anda adalah untuk menyenaraikan kandungan jadual perkhidmatan dan memasukkan nama pelanggan daripada jadual pelanggan. Medan "klien" dalam jadual perkhidmatan merujuk medan "id" dalam jadual pelanggan.
Penyelesaian
Untuk menyertai dua jadual dalam MySQL, anda boleh menggunakan sintaks LEFT JOIN. Jenis gabungan ini membolehkan anda mendapatkan semula semua baris dari jadual kiri (perkhidmatan) dan mana-mana baris yang sepadan dari jadual kanan (pelanggan). Pertanyaan berikut akan mencapai ini:
<code class="language-sql">SELECT * FROM services LEFT JOIN clients ON services.client = clients.id;</code>
Penjelasan
SELECT *
mendapatkan semula semua lajur dalam kedua-dua jadual. LEFT JOIN
bergabung dengan jadual perkhidmatan (jadual kiri) ke jadual pelanggan (jadual kanan) berdasarkan medan klien biasa. ON
menentukan syarat cantum, iaitu services.client = clients.id
. Ini bermakna baris dalam jadual perkhidmatan akan sepadan dengan baris dalam jadual pelanggan yang sepadan dengan ID pelanggan. Contoh output
Hasil pertanyaan akan menjadi satu jadual yang mengandungi semua lajur daripada jadual perkhidmatan dan pelanggan. Contohnya:
id | client | service | name | |
---|---|---|---|---|
1 | 10 | Web design | John Smith | john@example.com |
2 | 12 | Marketing | Mary Jones | mary@example.com |
3 | 15 | SEO | NULL | NULL |
Dalam contoh ini, baris dengan id 3 dalam jadual perkhidmatan tidak mempunyai baris yang sepadan dalam jadual pelanggan, jadi nama dan lajur e-mel adalah NULL.
Atas ialah kandungan terperinci Bagaimana untuk Menyertai Dua Jadual dengan Berkesan dalam MySQL Menggunakan LEFT JOIN?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!