Middle
Kuo skiriasi SELECT COUNT(*) ir SELECT COUNT(column) FROM table?
sobes.tech AI
Atsakymas iš AI
Skirtumas tarp SELECT COUNT(*) ir SELECT COUNT(stulpelis) SQL yra tas, kurios eilutės yra skaičiuojamos:
-
SELECT COUNT(*) FROM lentelė— skaičiuoja visas eilutes lentelėje, įskaitant tas, kuriose stulpelių reikšmės gali būti NULL. -
SELECT COUNT(stulpelis) FROM lentelė— skaičiuoja tas eilutes, kuriose nurodyto stulpelio reikšmė nėra NULL.
Pavyzdys:
| id | vardas |
|---|---|
| 1 | Alice |
| 2 | NULL |
| 3 | Bob |
SELECT COUNT(*) FROM lentelėgrąžins 3.SELECT COUNT(vardas) FROM lentelėgrąžins 2, nes vienas įrašas turi NULL vardą.
Todėl COUNT(stulpelis) yra naudingas, kai norite suskaičiuoti tik ne NULL reikšmes tam tikrame stulpelyje.