CodeGym /Cursos /SQL SELF /Introdução às funções agregadas

Introdução às funções agregadas

SQL SELF
Nível 7 , Lição 0
Disponível

Funções agregadas... Essas paradas são tipo mágicas no mundo da análise de dados! Elas ajudam a transformar milhões de linhas de dados em resultados resumidos e fáceis de entender. Com elas, dá pra contar, achar mínimos e máximos, calcular médias e fazer um monte de outras operações. Agora bora ver tudo isso na prática, passo a passo.

Funções agregadas são funções especiais do SQL que fazem operações em grupos de linhas e devolvem um resultado só. Se for pra comparar, é tipo juntar todas as estatísticas do seu café da manhã, tipo: quantas xícaras você tomou na semana, se colocou açúcar ou quantos dias seguidos colocou creme.

Exemplos de tarefas que as funções agregadas resolvem:

  • Contar o número total de registros em uma tabela.
  • Achar os valores mínimos ou máximos em uma coluna numérica.
  • Somar os valores de uma das colunas.
  • Calcular a média de todos os valores de uma coluna.
  • Destacar valores únicos.

Como isso funciona "por baixo dos panos"?

O SQL executa a função agregada depois de buscar os dados no SELECT. Por exemplo, quando você coloca SUM() ou AVG(), o SQL primeiro pega os dados e só depois faz o cálculo nas linhas selecionadas.

Principais funções agregadas no PostgreSQL

Bora pra prática e ver o top 5 dos nossos heróis:

  1. COUNT() — conta o número de linhas.
  2. SUM() — soma os valores de uma coluna numérica.
  3. AVG() — calcula o valor médio.
  4. MIN() — acha o valor mínimo.
  5. MAX() — acha o valor máximo.

Exemplos de uso das funções agregadas

  1. Contando linhas com COUNT()

A função COUNT() permite contar o número total de linhas em uma tabela ou o número de valores não nulos em uma coluna específica.

Exemplo: imagina que a gente tem uma tabela students que guarda informações dos estudantes:

id name age grade
1 Otto Art 20 85
2 Maria Chi 22 90
3 Alex Lin 21 78
4 Anna Song 23 NULL

Vamos contar o número total de estudantes:

SELECT 
    COUNT(*) AS total_students
FROM students;

Resultado:

total_students
4

Agora vamos contar quantos estudantes têm grade preenchido:

SELECT 
    COUNT(grade) AS students_with_grades
FROM students;

Resultado:

students_with_grades
3

Por que isso acontece? Porque COUNT(column) ignora os valores NULL.

  1. Somando com SUM()

A função SUM() serve pra somar todos os valores de uma coluna numérica.

Exemplo: bora ver quantos pontos no total nossos estudantes fizeram.

SELECT 
    SUM(grade) AS total_grades
FROM students;

Resultado:

total_grades
253

Observação: Se tiver NULL na coluna, eles simplesmente são ignorados na soma.

  1. Média com AVG()

A função AVG() calcula a média de todos os registros numéricos da coluna.

Exemplo: vamos calcular a média das notas dos estudantes.

SELECT 
    AVG(grade) AS average_grade
FROM students;

Resultado:

average_grade
84.33

Você deve ter reparado que NULL de novo são ignorados.

  1. Mínimo e máximo com MIN() e MAX()

Às vezes a gente precisa achar o menor ou o maior valor. Pra isso existem MIN() e MAX().

Exemplo: vamos achar o estudante mais novo e o mais velho.

SELECT 
    MIN(age) AS youngest_student, 
    MAX(age) AS oldest_student
FROM students;

Resultado:

youngest_student oldest_student
20 23

Vamos falar mais sobre essas funções nas próximas aulas.

Conhecendo o NULL

Vai ter uma aula só sobre NULL em breve, mas resumindo: NULL é ausência de valor. Nada. Vazio. É o nullzão mesmo!

Imagina que a gente tem uma tabela students que guarda informações dos estudantes:

id name age grade hobbie
1 Otto Art 20 85
2 Maria Chi 22 90 Dança
3 Alex Lin 21 78
4 Anna Song 23

Nome e idade sempre têm valor, mas nota e hobbie podem faltar. Se uma célula da tabela não tem valor nenhum, a gente diz que ela contém NULL. NULL não é número nem string, é um código especial que indica ausência de qualquer valor.

Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION