Evaluasi WHERE terhadap baris ber-NULL 0 baris lolos

SELECT * FROM pelanggan\nWHERE kota = 'Semarang';

Tabel pelanggan — dua baris sengaja tidak punya kota

idnamakotahasil kondisinasib baris

Perbandingan biasa (=, <>) terhadap NULL tidak pernah menghasilkan TRUE ataupun FALSE, melainkan UNKNOWN — dan hanya TRUE yang lolos WHERE. Karena itu baris ber-NULL hilang diam-diam dari hasil, tanpa pesan error. Satu-satunya cara menemukan mereka: IS NULL (atau menyisihkannya dengan IS NOT NULL). NULL juga bukan 0 dan bukan teks kosong ''. Isi kolom kota pelanggan tanpa kota memang tidak diketahui, bukan 'tidak ada'.