Database
 sql >> Base de Dados >  >> RDS >> Database

Como contar o número de linhas em uma tabela no SQL

Problema:


Você gostaria de determinar quantas linhas uma tabela tem.

Exemplo:


Nosso banco de dados tem uma tabela chamada pet com dados nas seguintes colunas:id , eID (identificador eletrônico) e name .
id eID nome
1 23456 brilhante
2 23457 mil
3 NULO menos
4 NULO Carl
5 34545 maggy

Vamos contar todas as linhas da tabela.

Solução:


COUNT(*) conta o número total de linhas na tabela:
SELECT COUNT(*) as count_pet
FROM pet;

Aqui está o resultado:
count_pet
5

Em vez de passar o asterisco como argumento, você pode usar o nome de uma coluna específica:
SELECT COUNT(id) as count_pet
FROM pet;

Nesse caso, COUNT(id) conta o número de linhas em que id não é NULL .

Discussão:


Use o COUNT função agregada para contar o número de linhas em uma tabela. Esta função recebe o nome da coluna como argumento (por exemplo, id ) e retorna o número de linhas dessa coluna específica na tabela (por exemplo, 5).

Como mencionado acima, quando você especifica uma coluna em vez do asterisco, a função só contará não-NULL valores. Como id é a chave primária de nossa tabela - e, portanto, possui um único e não NULL valores—é um bom candidato para contar o número total de linhas na tabela.

Claro, para contar todas as linhas, você pode passar o caractere asterisco como argumento para COUNT. Isso contará todas as linhas, incluindo aquelas com um valor de NULL em qualquer coluna.

Aqui está um exemplo de contagem do número de linhas para uma coluna que tem NULL valores:
SELECT COUNT(eID) as count_pet
FROM pet;
count_pet
3

É recomendável que você passe uma coluna de chave primária ou o caractere * para a função COUNT para contar o número de linhas em uma tabela. Como vimos, ambas as abordagens produzirão o mesmo resultado.