Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menyertai Tiga Jadual dengan Benar dalam MySQL Menggunakan LEFT JOIN untuk Mendapatkan Semua Orang dan Ketakutan Mereka?

Bagaimana untuk Menyertai Tiga Jadual dengan Benar dalam MySQL Menggunakan LEFT JOIN untuk Mendapatkan Semua Orang dan Ketakutan Mereka?

Susan Sarandon
Lepaskan: 2024-12-21 12:09:11
asal
651 orang telah melayarinya

How to Correctly Join Three Tables in MySQL Using LEFT JOIN to Retrieve All Persons and Their Associated Fears?

Berbilang Jadual Menyertai dengan MySQL LEFT JOIN

Dalam senario ini, kami menghadapi cabaran untuk menyertai tiga jadual: 'Orang' , 'Ketakutan' dan 'Orang_Takut'. Objektifnya adalah untuk memaparkan semua rekod daripada jadual 'Orang' bersama-sama dengan sebarang ketakutan yang berkaitan, walaupun sesetengah orang tidak mempunyai ketakutan.

Pada mulanya, pertanyaan LEFT JOIN yang disediakan cuba untuk menyertai 'Person_Fear.PersonID' dengan ' Person_Fear.FearID', yang menghasilkan keputusan yang salah. Pendekatan yang betul ialah menyertai 'Person_Fear' dengan 'Orang' dan 'Ketakutan' berdasarkan perhubungan utama asing yang betul.

Penyelesaian:

SELECT Persons.Name, Persons.SS, Fears.Fear 
FROM Persons
LEFT JOIN Person_Fear ON Person_Fear.PersonID = Persons.PersonID
LEFT JOIN Fears ON Person_Fear.FearID = Fears.FearID
Salin selepas log masuk

Pertanyaan yang disemak ini dengan berkesan menggabungkan 'Orang' ke 'Person_Fear' dan 'Fears' melalui kunci asing masing-masing. SERTAI KIRI antara 'Orang' dan 'Person_Fear' memastikan semua rekod daripada jadual 'Orang' disertakan, tidak kira sama ada mereka mempunyai sebarang ketakutan yang berkaitan.

Penyelesaian Alternatif:

SELECT Persons.Name, Persons.SS, Fears.Fear 
FROM Persons
LEFT JOIN Person_Fear 
    INNER JOIN Fears ON Person_Fear.FearID = Fears.FearID
ON Person_Fear.PersonID = Persons.PersonID
Salin selepas log masuk

Pendekatan alternatif ini menggunakan JOIN DALAM antara 'Person_Fear' dan 'Fears' untuk menapis kepada ketakutan yang berkaitan. SERTAI KIRI seterusnya dengan 'Orang' masih memastikan semua individu disertakan dalam keputusan.

Atas ialah kandungan terperinci Bagaimana untuk Menyertai Tiga Jadual dengan Benar dalam MySQL Menggunakan LEFT JOIN untuk Mendapatkan Semua Orang dan Ketakutan Mereka?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan