As funções agregadas em SQL são ferramentas essenciais para realizar cálculos sobre conjuntos de dados.
Elas permitem somar, contar, calcular médias e determinar o valor máximo ou mínimo em uma coluna.
Vamos explorar neste artigo as cinco principais funções agregadas em SQL: SUM, AVG, COUNT, MAX e MIN, com exemplos práticos para ajudar a entender quando e como usá-las.
1. O Que São Funções Agregadas em SQL?
- Definição: Funções agregadas são usadas para executar cálculos em um conjunto de valores e retornar um único valor. Elas são comumente usadas com a cláusula
GROUP BY
para agrupar os resultados de uma consulta com base em uma ou mais colunas. - Principais Funções Agregadas:
- SUM: Calcula a soma de um conjunto de valores.
- AVG: Calcula a média de um conjunto de valores.
- COUNT: Conta o número de registros ou valores.
- MAX: Retorna o valor máximo em uma coluna.
- MIN: Retorna o valor mínimo em uma coluna.
2. Usando a Função SUM
- Descrição: A função
SUM
é usada para somar os valores de uma coluna numérica. - Exemplo:
SELECT SUM(VALOR) AS TOTAL_VENDA FROM venda;
- Explicação: Esta consulta retorna o total de todas as vendas da tabela “venda”. A função
SUM
soma todos os valores da colunavalor
. - Quando Usar: Use
SUM
quando você precisar calcular o total de valores em uma coluna, como o total de vendas, receitas ou despesas.
3. Usando a Função AVG
- Descrição: A função
AVG
calcula a média de um conjunto de valores. - Exemplo:
SELECT AVG(SALARIO) AS MEDIA_SALARIAL FROM funcionario;
- Explicação: Esta consulta retorna a média dos salários de todos os funcionários. A função
AVG
soma todos os valores da colunasalario
e divide pelo número de registros. - Quando Usar: Use
AVG
quando precisar calcular a média de valores, como a média salarial de uma equipe ou a média de preços de produtos.
4. Usando a Função COUNT
- Descrição: A função
COUNT
retorna o número de registros em uma tabela ou o número de valores não nulos em uma coluna. - Exemplo:
SELECT COUNT(*) AS TOTAL_CLIENTE FROM cliente;
- Explicação: Esta consulta retorna o número total de registros na tabela “cliente”. O uso de
COUNT(*)
conta todas as linhas, incluindo aquelas com valores nulos. - Exemplo com COUNT(column):
SELECT COUNT(EMAIL) AS TOTAL_COM_EMAIL FROM cliente;
- Explicação: Aqui, a consulta conta apenas os registros onde a coluna
email
não é nula. - Quando Usar: Use
COUNT
para contar o número total de registros ou para contar valores não nulos em uma coluna específica.
5. Usando a Função MAX
- Descrição: A função
MAX
retorna o maior valor em uma coluna. - Exemplo:
SELECT MAX(SALARIO) AS MAIOR_SALARIO FROM funcionario;
- Explicação: Esta consulta retorna o maior salário da tabela “funcionario”. A função
MAX
busca o valor mais alto na colunasalario
. - Quando Usar: Use
MAX
para encontrar o valor máximo em uma coluna, como o maior preço de um produto ou o maior salário de uma empresa.
6. Usando a Função MIN
- Descrição: A função
MIN
retorna o menor valor em uma coluna. - Exemplo:
SELECT MIN(SALARIO) AS MENOR_SALARIO FROM funcionario;
- Explicação: Esta consulta retorna o menor salário da tabela “funcionário”. A função
MIN
busca o valor mais baixo na colunasalario
. - Quando Usar: Use
MIN
para encontrar o valor mínimo em uma coluna, como o menor preço de um produto ou o menor salário de uma equipe.
7. Combinando Funções Agregadas com GROUP BY
- Descrição: As funções agregadas se tornam ainda mais poderosas quando combinadas com o
GROUP BY
, que agrupa os dados com base em uma ou mais colunas antes de aplicar as funções agregadas. - Exemplo:
SELECT DEPARTAMENTO, AVG(SALARIO) AS MEDIA_SALARIAL FROM funcionario GROUP BY DEPARTAMENTO;
- Explicação: Esta consulta calcula a média salarial de cada departamento na tabela “funcionario”. O
GROUP BY
agrupa os registros por departamento, e a funçãoAVG
é aplicada a cada grupo. - Quando Usar: Use
GROUP BY
com funções agregadas quando precisar realizar cálculos por categorias, como o total de vendas por mês ou a média de salários por departamento.
8. Dicas para Usar Funções Agregadas de Forma Eficiente
- 1. Combine com WHERE para Filtragem: Use a cláusula
WHERE
para aplicar funções agregadas a subconjuntos específicos de dados.- Exemplo:
SELECT SUM(VALOR) AS TOTAL_VENDA FROM venda WHERE DATA_VENDA BETWEEN '2024-01-01' AND '2024-12-31';
- Exemplo:
- 2. Cuidado com Valores Nulos: Funções agregadas como
SUM
,AVG
,MAX
eMIN
ignoram valores nulos, masCOUNT(*)
conta todas as linhas, incluindo as com valores nulos. - 3. Use HAVING com GROUP BY: Quando precisar filtrar os resultados de uma função agregada após o agrupamento, use a cláusula
HAVING
.- Exemplo:
SELECT DEPARTAMENTO, AVG(SALARIO) AS MEDIA_SALARIAL FROM funcionario GROUP BY DEPARTAMENTO HAVING AVG(SALARIO) > 5000;
- Exemplo:
Conclusão
As funções agregadas em SQL, como SUM, AVG, COUNT, MAX e MIN, são ferramentas poderosas para realizar cálculos e análises de dados.
Ao dominar essas funções, você será capaz de realizar operações complexas de forma eficiente e obter insights valiosos dos seus dados. Lembre-se de usá-las em conjunto com cláusulas como WHERE
, GROUP BY
e HAVING
para obter ainda mais controle sobre os resultados.
0 Comentários