Agrupando dados

SQL Intermediário com IA

Jasmin Ludolf

Senior Data Science Content Developer

Agrupando dados

$$

  • Insights para grupos específicos

$$

  • Combinar linhas com os mesmos valores

$$

  • Criar resumos para revelar padrões

Coleção de livros de idiomas

SQL Intermediário com IA

Distinto vs. grupos

SELECT DISTINCT language
FROM films;
|language|        
|--------|
|Danish  |
|Greek   |
|Dzongkha|
|...     |
  • Valores únicos
  • Quais idiomas temos?
SELECT language
FROM films
GROUP BY language;
|language|        
|--------|
|Danish  |
|Greek   |
|Dzongkha|
|...     |
  • Cria grupos
  • Quantos filmes temos em cada idioma?
SQL Intermediário com IA

Prompts para agrupamento

Prompt: Agrupar filmes por idioma

SELECT language, COUNT(*) AS lang_count
FROM films
GROUP BY language;
|language|lang_count|
|--------|----------|
|        |11        |
|Arabic  |5         |
|Kannada |1         |
|Czech   |1         |
...

$$

  • Agrupamento é comum com estatísticas resumidas:
    • ex. contagem, médias

$$

  • Sem pedido específico -> COUNT()
    • Função de agregação
    • Resume várias linhas em um único valor
SQL Intermediário com IA

Erros comuns de agrupamento

Prompt: Mostrar todos os títulos de filmes agrupados por idioma

SELECT title
FROM films
GROUP BY language;
column "films.title" must appear in the
GROUP BY clause or be used in an 
aggregate function LINE 1...

Correções de IA:

  • Adicionando a função COUNT()
    SELECT language, COUNT(title) AS count
    FROM films
    GROUP BY language;
    
  • Selecionando campos corretos
    SELECT title, language
    FROM films
    GROUP BY title, language;
    
SQL Intermediário com IA

Prompts de agrupamento

Prompt: Contar filmes por país e idioma

SELECT country, language, COUNT(*) AS film_count
FROM films
GROUP BY country, language;
|country           |language|film_count|
|------------------|--------|----------|
|                  |        |1         |
|Pakistan          |Urdu    |1         |
|Mexico            |English |3         |
|Dominican Republic|Spanish |1         |
...
SQL Intermediário com IA

Agrupando e ordenando

Prompt: Classificar idiomas por número de filmes, mostrando os 3 primeiros

SELECT language, COUNT(*) AS film_count
FROM films
GROUP BY language
ORDER BY film_count DESC
LIMIT 3;
|language|film_count|
|--------|----------|
|English |4635      |
|French  |72        |
|Spanish |40        |
SQL Intermediário com IA

Vamos praticar!

SQL Intermediário com IA

Preparing Video For Download...