Sobes.tech
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.