Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

O que significa selecionar count(1) from table_name em qualquer tabela de banco de dados?


O parâmetro para a função COUNT é uma expressão que deve ser avaliada para cada linha. A função COUNT retorna o número de linhas para as quais a expressão é avaliada como um valor não nulo. ( * é uma expressão especial que não é avaliada, ela simplesmente retorna o número de linhas.)

Existem dois modificadores adicionais para a expressão:ALL e DISTINCT. Eles determinam se as duplicatas são descartadas. Como ALL é o padrão, seu exemplo é o mesmo que count(ALL 1), o que significa que as duplicatas são mantidas.

Como a expressão "1" é avaliada como não nula para cada linha e como você não está removendo duplicatas, COUNT(1) deve sempre retornar o mesmo número que COUNT(*).