Sobes.tech
Middle

Mi a különbség a SELECT COUNT(*) és a SELECT COUNT(oszlop) között a táblában?

sobes.tech MI

Válasz az MI-től

A SELECT COUNT(*) és a SELECT COUNT(oszlop) közötti különbség az SQL-ben az, hogy mely sorokat számolja:

  • SELECT COUNT(*) FROM tábla — minden sort számol a táblában, beleértve azokat is, ahol az oszlopértékek NULL-ok lehetnek.

  • SELECT COUNT(oszlop) FROM tábla — csak azokat a sorokat számolja, ahol a megadott oszlop értéke nem NULL.

Példa:

id név
1 Alice
2 NULL
3 Bob
  • SELECT COUNT(*) FROM tábla 3-at ad vissza.
  • SELECT COUNT(név) FROM tábla 2-t ad vissza, mivel egy rekord NULL értéket tartalmaz a név oszlopban.

Ezért a COUNT(oszlop) akkor hasznos, ha csak a nem NULL értékeket akarjuk számolni egy adott oszlopban.