Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Menyertai Empat Jadual SQL dengan Cekap Menggunakan ID untuk Menggabungkan Data?

Bagaimanakah Saya Boleh Menyertai Empat Jadual SQL dengan Cekap Menggunakan ID untuk Menggabungkan Data?

DDD
Lepaskan: 2025-01-14 07:07:42
asal
795 orang telah melayarinya

How Can I Efficiently Join Four SQL Tables Using IDs to Combine Data?

Sertai berbilang jadual SQL dengan cekap menggunakan ID

Menyertai berbilang jadual SQL ialah operasi asas dalam penyepaduan dan analisis data. Apabila terdapat lajur dengan nilai yang sepadan dalam jadual, anda boleh menyertainya menggunakan ID dan mendapatkan semula data daripada berbilang sumber data.

Andaikan anda mempunyai empat jadual: JadualA, JadualB, JadualC dan JadualD, dengan struktur lajur berikut:

  • JadualA: bantuan (kunci utama), namaA, dID
  • JadualB: bID (kunci utama), namaB, cID, bantuan
  • JadualC: cID (kunci utama), namaC, tarikh
  • JadualD: dID (kunci utama), namaD

Anda mahu menyertai jadual ini untuk mengekstrak dan menggabungkan data. Anda telah berjaya menyertai TableA, TableB dan TableC menggunakan ID masing-masing:

<code class="language-sql">SELECT TableA.*, TableB.*, TableC.*
FROM (TableB INNER JOIN TableA ON TableB.aID = TableA.aID)
INNER JOIN TableC ON (TableB.cID = TableC.cID)
WHERE DATE(TableC.date) = DATE(NOW())</code>
Salin selepas log masuk

Walau bagaimanapun, apabila anda cuba menambah JadualD pada sambungan, anda mendapat ralat kerana "TableD" tidak dikenali.

Untuk menyelesaikan isu ini, anda perlu menambah sambungan lain untuk mengandungi TableD. Pertanyaan yang betul hendaklah:

<code class="language-sql">SELECT TableA.*, TableB.*, TableC.*, TableD.*
FROM TableA
JOIN TableB ON TableB.aID = TableA.aID
JOIN TableC ON TableC.cID = TableB.cID
JOIN TableD ON TableD.dID = TableA.dID
WHERE DATE(TableC.date) = DATE(NOW())</code>
Salin selepas log masuk

Pertanyaan ini melakukan gabungan empat jadual, bermula dengan JadualA dan menyertai jadual lain dalam urutan berdasarkan ID yang sepadan. Ini membolehkan anda mendapatkan semula data daripada keempat-empat jadual dan menggabungkannya menjadi satu set hasil tunggal.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyertai Empat Jadual SQL dengan Cekap Menggunakan ID untuk Menggabungkan Data?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan