Pelajaran 18 / 37 · Join

Mencari baris tanpa pasangan dengan anti-join

Lakukan LEFT JOIN, lalu simpan hanya baris yang kolom kanannya tetap NULL. IS NULL bisa menangkap NULL dengan benar, jadi inilah cara yang tepat untuk menjawab "departemen mana yang tidak punya karyawan?".

Query-nya

SELECT d.name
FROM departments d
LEFT JOIN employees e ON e.dept_id = d.id
WHERE e.id IS NULL

Coba IS NOT NULL: pertanyaan kebalikannya menghasilkan 5 baris, Engineering dan Sales masing-masing dua kali, sekali per karyawan.

Berikutnya: Join berjalan dari kiri ke kanan, satu langkah per join · Semua pelajaran