Mencari Rekod Terpisah dengan SQL: Pengecualian ID
Pertimbangkan senario di mana anda mempunyai dua jadual dengan pengikatan kunci utama dan ingin mengenal pasti yang terputus set rekod. Katakan anda mempunyai dua jadual, Jadual1 dan Jadual2, dengan ID berfungsi sebagai kunci utama. Objektif anda adalah untuk mendapatkan semula baris daripada Jadual1 yang IDnya tidak terdapat dalam Jadual2.
Untuk mencapai ini, anda boleh menggunakan pertanyaan SQL berikut:
SELECT ID, Name FROM Table1 WHERE ID NOT IN (SELECT ID FROM Table2)
Pertanyaan ini mendapatkan semula ID dan Nama daripada Jadual1 yang ID bukan antara ID yang terdapat dalam Jadual2. Operator NOT IN membandingkan lajur ID Jadual1 dengan lajur ID Jadual2, tidak termasuk sebarang ID yang sepadan.
Sebagai contoh, dalam contoh yang anda berikan, di mana Jadual1 mengandungi ID John (1), Peter (2 ), dan Mary (3), dan Jadual2 mempunyai ID alamat2 (1) dan alamat2 (2), pertanyaan akan mengembalikan baris untuk Mary (3) kerana IDnya tiada dalam Jadual2.
Dengan menggunakan pertanyaan ini, anda boleh mencari rekod berpisah antara jadual dengan berkesan, membolehkan anda mengenal pasti data yang tidak sepadan atau tiada.
Atas ialah kandungan terperinci Bagaimana untuk Mencari Rekod Disjoint dalam SQL Menggunakan Pengecualian ID?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!