Memaparkan Kiraan Sifar dalam MySQL COUNT
Apabila mengira nilai menggunakan fungsi COUNT() dalam MySQL, ia selalunya mengecualikan baris dengan nilai nol. Ini boleh menyebabkan kesukaran apabila cuba memaparkan kiraan untuk semua baris, termasuk yang tidak mempunyai nilai yang sepadan dalam jadual lain.
Mengatasi Isu
Untuk menangani isu ini, anda boleh menggunakan gabungan luar dalam kombinasi dengan fungsi COUNT(). Pertanyaan berikut menggunakan LEFT JOIN untuk memasukkan semua baris daripada jadual Pekerja, tidak kira sama ada mereka mempunyai entri yang sepadan dalam jadual melSubscriptions:
SELECT c.name, count(m.mailid) FROM Employee LEFT JOIN mailingSubscriptions as m ON c.Name = m.EmployeeName GROUP BY c.name;
Penjelasan
Keputusan
Pertanyaan ini akan mengembalikan jadual dengan dua lajur: Nama dan Kiraan Langganan. Lajur Kiraan Langganan akan memaparkan bilangan langganan untuk setiap pekerja atau 0 untuk pekerja tanpa sebarang langganan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memaparkan Kiraan Sifar dalam MySQL COUNT() untuk Baris dengan Nilai Null?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!