Sobes.tech
Back to questions
Middle
4

В чем разница между SELECT COUNT(*) и SELECT COUNT(column) FROM table?

Companies where asked
EcoFinance

Answer from AI

sobes.tech AI

Разница между SELECT COUNT(*) и SELECT COUNT(column) в SQL заключается в том, какие строки учитываются при подсчёте:

  • SELECT COUNT(*) FROM table — считает количество всех строк в таблице, включая те, где значения в столбцах могут быть NULL.

  • SELECT COUNT(column) FROM table — считает количество строк, где значение в указанном столбце не равно NULL.

Пример:

id name
1 Alice
2 NULL
3 Bob
  • SELECT COUNT(*) FROM table вернёт 3.
  • SELECT COUNT(name) FROM table вернёт 2, так как одна запись содержит NULL в столбце name.

Таким образом, COUNT(column) полезен, когда нужно посчитать только непустые значения в конкретном столбце.