Ini akan mengungkapkan semua
SELECT 4=4, 3=4, 1 or null, 0 or null
Keluaran
1 | 0 | 1 | NULL
Fakta
-
COUNT menambahkan kolom/ekspresi yang mengevaluasi NOT NULL. Apa pun akan bertambah 1, selama itu bukan nol. Pengecualian adalah COUNT(DISTINCT) yang bertambah hanya jika belum dihitung.
-
Ketika ekspresi BOOLEAN digunakan sendiri, ia mengembalikan 1 atau 0.
-
Ketika boolean adalah
OR
-ed dengan NULL, NULL hanya jika bernilai 0 (salah)
Kepada orang lain
Ya jika hitungan adalah HANYA kolom yang diinginkan, seseorang dapat menggunakan WHERE value=4
tetapi jika itu adalah kueri yang ingin menghitung dan juga 4 mengambil jumlah/agregat lain, maka filter tidak berfungsi. Alternatifnya adalah SUM(value=4)
, misalnya
SELECT sum(value=4)
FROM test