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:
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>
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>
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!