Rumah >pangkalan data >tutorial mysql >COUNT(lajur) lwn. COUNT(*): Apakah Perbezaan dalam SQL?
Apakah perbezaan antara COUNT(lajur) dan COUNT(*) apabila menanyakan jadual SQL?
COUNT(lajur) mengira bilangan nilai bukan nol dalam lajur yang ditentukan. Sebaliknya, COUNT(*) mengira semua baris dalam jadual, tidak kira sama ada lajur yang ditentukan mengandungi nilai nol.
Pertimbangkan borang berikut:
id | name |
---|---|
1 | John Doe |
2 | Jane Doe |
3 | NULL |
4 | NULL |
COUNT(lajur) mengabaikan nilai NULL, manakala COUNT(*) menganggapnya sebagai entri yang sah. Tingkah laku ini boleh menjejaskan hasil pertanyaan, terutamanya apabila menggunakan syarat pada klausa WHERE.
Pertimbangkan pertanyaan berikut:
<code class="language-sql">SELECT name, COUNT(*) FROM table GROUP BY name HAVING COUNT(*) > 2;</code>
Atas ialah kandungan terperinci COUNT(lajur) lwn. COUNT(*): Apakah Perbezaan dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!