Middle
Jaka jest różnica między SELECT COUNT(*) a SELECT COUNT(column) FROM table?
sobes.tech AI
Odpowiedź od AI
Różnica między SELECT COUNT(*) a SELECT COUNT(kolumna) w SQL polega na tym, które wiersze są liczone:
-
SELECT COUNT(*) FROM tabela— liczy wszystkie wiersze w tabeli, w tym te, gdzie wartości w kolumnach mogą być NULL. -
SELECT COUNT(kolumna) FROM tabela— liczy wiersze, w których wartość w podanej kolumnie nie jest NULL.
Przykład:
| id | nazwa |
|---|---|
| 1 | Alice |
| 2 | NULL |
| 3 | Bob |
SELECT COUNT(*) FROM tabelazwróci 3.SELECT COUNT(nazwa) FROM tabelazwróci 2, ponieważ jeden wpis zawiera NULL w kolumnie nazwa.
Dlatego COUNT(kolumna) jest przydatny, gdy chcesz policzyć tylko niepuste wartości w konkretnej kolumnie.