Pular para o conteúdo principal

FUNÇÃO SQL COUNT()

COUNT() permite que você conte o número de linhas que correspondem a determinadas condições. Saiba como usá-lo neste tutorial.
24 de abr. de 2024  · 3 min de leitura

O que é o COUNT() função?

A função COUNT() retorna o número de linhas que correspondem a um critério.

COUNT() syntax

A sintaxe básica do site COUNT() é a seguinte.

SELECT COUNT(column_name)
FROM table_name;

As variações da sintaxe atingem objetivos diferentes.

  • A sintaxe COUNT(*) nos permite contar o número de linhas em uma tabela
  • A sintaxe COUNT(DISTINCT column) nos permite contar o número de valores distintos em uma coluna 
  • A sintaxe COUNT(CASE WHEN condition THEN column END) nos permite contar o número de valores que atendem às condições.

COUNT()usado com GROUP BY, é útil para contar o número de linhas que pertencem a cada grupo.

COUNT()usado com HAVING, é útil para filtrar grupos de acordo com o número de linhas que eles têm.

Vamos ilustrá-los com os exemplos abaixo.

COUNT() exemplos

Exemplo 1: Contagem do número de linhas com COUNT(*)

A tabela chamada products contém todos os produtos que uma empresa vende. A cláusula COUNT(*) nos permite calcular o número de linhas na tabela. 

SELECT
    COUNT(*) AS number_of_rows
FROM products

number_of_rows

321

Exemplo 2: Contagem de valores exclusivos com COUNT(DISTINCT …)

A sintaxe COUNT(DISTINCT column) nos permite contar o número de valores exclusivos em uma coluna.

Por exemplo, cada produto tem uma marca associada na tabela products. Podemos contar o número de produtos e marcas exclusivos na tabela.

SELECT
    COUNT(DISTINCT product_id) AS unique_product_count,
    COUNT(DISTINCT brand_id) AS unique_brand_count
FROM products

unique_product_count

unique_brand_count

321

9

Exemplo 3: Contar as linhas que correspondem a uma condição usando COUNT() com CASE WHEN 

A sintaxe COUNT(CASE WHEN condition THEN column END) nos permite calcular o número de linhas que correspondem a uma condição.

Por exemplo, na tabela de produtos, cada produto tem um list_price. Podemos calcular quantos produtos são "expensive" (com um preço de lista superior a US$ 500) ou não.

SELECT
    COUNT(CASE WHEN list_price >= 500 THEN product_id END) AS expensive_product_count,
   COUNT(CASE WHEN list_price < 500 THEN product_id END) AS cheap_product_count
FROM products

expensive_product_count

cheap_product_count

213

108

Exemplo 4: Contar linhas em grupos usando COUNT() com GROUP BY

COUNT() pode ser usado com GROUP BY para encontrar o número de linhas em cada grupo.

Por exemplo, a tabela de produtos contém modelos de bicicletas de 2016 a 2019. Para encontrar a distribuição da bicicleta, podemos usar COUNT(product_id) e GROUP BY model_year para contar o número de produtos de cada ano. 

SELECT
    model_year,
    COUNT(product_id) AS product_count
FROM products
GROUP BY model_year

model_year

product_count

2016

26

2017

85

2018

204

2019

6

Exemplo 5: Filtrar por grupos usando COUNT() com GROUP BY e HAVING

No exemplo 4, vemos que COUNT() pode ser usado com GROUP BY. Podemos usar a instrução HAVING para filtrar os grupos usando o número de linhas nesse grupo.

Por exemplo, para encontrar o número de anos que têm menos de 50 produtos, podemos usar a seguinte sintaxe. 

SELECT
   model_year
FROM products
GROUP BY model_year
HAVING COUNT(product_id) < 50

year_with_less_than_50_pdt

2016

2019

Requisitos técnicos

COUNT() é uma função que está disponível em todas as versões do SQL moderno. 

Veja também

Saiba mais sobre o SQL

Temas

Cursos populares de SQL

curso

Introduction to SQL

2 hr
891.9K
Learn how to create and query relational databases using SQL in just two hours.
Ver DetalhesRight Arrow
Iniciar Curso
Ver maisRight Arrow
Relacionado

tutorial

FUNÇÃO SQL FORMAT()

FORMAT() é uma das funções mais comumente usadas no SQL. Aprenda suas principais aplicações neste tutorial.
Travis Tang 's photo

Travis Tang

3 min

tutorial

Função SQL COALESCE

COALESCE() é uma das funções mais úteis do SQL. Leia este tutorial para saber como dominá-lo.
Travis Tang 's photo

Travis Tang

4 min

tutorial

SELEÇÃO de várias colunas no SQL

Saiba como selecionar facilmente várias colunas de uma tabela de banco de dados em SQL ou selecionar todas as colunas de uma tabela em uma consulta simples.
DataCamp Team's photo

DataCamp Team

3 min

tutorial

FUNÇÃO SQL DATEDIFF()

DATEDIFF() é uma das funções de manipulação de dados de data mais usadas no SQL. Domine-o lendo este tutorial.
Travis Tang 's photo

Travis Tang

3 min

tutorial

Como usar GROUP BY e HAVING no SQL

Um guia intuitivo para você descobrir os dois comandos SQL mais populares para agregar linhas do seu conjunto de dados
Eugenia Anello's photo

Eugenia Anello

6 min

tutorial

Tutorial do Insert Into SQL

A instrução "INSERT INTO" do SQL pode ser usada para adicionar linhas de dados a uma tabela no banco de dados.
DataCamp Team's photo

DataCamp Team

3 min

See MoreSee More