Sobes.tech
Middle

Qual é a diferença entre SELECT COUNT(*) e SELECT COUNT(coluna) FROM tabela?

sobes.tech IA

Resposta da IA

A diferença entre SELECT COUNT(*) e SELECT COUNT(coluna) em SQL reside no que é contado:

  • SELECT COUNT(*) FROM tabela — conta todas as linhas na tabela, incluindo aquelas onde os valores nas colunas podem ser NULL.

  • SELECT COUNT(coluna) FROM tabela — conta as linhas onde o valor na coluna especificada não é NULL.

Exemplo:

id nome
1 Alice
2 NULL
3 Bob
  • SELECT COUNT(*) FROM tabela retornará 3.
  • SELECT COUNT(nome) FROM tabela retornará 2, pois uma entrada contém NULL na coluna nome.

Assim, COUNT(coluna) é útil quando se deseja contar apenas os valores não nulos em uma coluna específica.