Análise condicional

SQL Intermediário com IA

Jasmin Ludolf

Senior Data Science Content Developer

Agregados condicionais

Prompt: Mostre o número de filmes com orçamento e sem orçamento, para cada ano

SELECT 
    release_year,
    COUNT(CASE WHEN budget IS NOT NULL THEN 1 END) AS films_with_budget,
    COUNT(CASE WHEN budget IS NULL THEN 1 END) AS films_without_budget
FROM films
GROUP BY release_year;
|release_year|films_with_budget|films_without_budget|
|------------|-----------------|--------------------|
|1964        |10               |0                   |
|1969        |9                |1                   |
...
SQL Intermediário com IA

Agregados condicionais

Diagrama condicional

SQL Intermediário com IA

Agregados condicionais

Prompt: Mostre o número de filmes com orçamento e sem orçamento, para cada ano

SELECT 
    release_year,
    COUNT(CASE WHEN budget IS NOT NULL THEN 1 END) AS films_with_budget,
    COUNT(CASE WHEN budget IS NULL THEN 1 END) AS films_without_budget
FROM films
GROUP BY release_year;
|release_year|films_with_budget|films_without_budget|
|------------|-----------------|--------------------|
|1964        |10               |0                   |
|1969        |9                |1                   |
...
  • Se um filme atende à condição, conta um 1
SQL Intermediário com IA

Agregados condicionais

Prompt: Mostre o número de filmes com orçamento e sem orçamento, para cada ano

SELECT 
    release_year,
    SUM(CASE WHEN budget IS NOT NULL THEN 1 ELSE 0 END) AS films_with_budget,
    SUM(CASE WHEN budget IS NULL THEN 1 ELSE 0 END) AS films_without_budget
FROM  films
GROUP BY release_year;
|release_year|films_with_budget|films_without_budget|
|------------|-----------------|--------------------|
|1964        |10               |0                   |
|1969        |9                |1                   |
...
SQL Intermediário com IA

Agregados condicionais com NULLs

Prompt: Mostre o número de filmes com orçamento e sem orçamento, para cada ano

SELECT 
    release_year,
    COUNT(CASE WHEN budget IS NOT NULL THEN 1 END) AS films_with_budget,
    COUNT(CASE WHEN budget IS NULL THEN 1 END) AS films_without_budget
FROM films
GROUP BY release_year;
  • NULLs estão em films_without_budget
  • Pode ser necessário filtrar com WHERE
SQL Intermediário com IA

Combinando técnicas

Prompt: Para cada ano após 2000 com pelo menos 5 filmes com dados de orçamento, categorize os filmes como Alto Orçamento se o orçamento for superior a 1 milhão e Baixo Orçamento se for 1 milhão ou menos, e mostre as contagens para cada categoria, ordenadas por ano e mostrando os 10 principais resultados

SELECT 
    release_year,

COUNT(CASE WHEN budget > 1000000 THEN 1 END) AS high_budget_count, COUNT(CASE WHEN budget <= 1000000 THEN 1 END) AS low_budget_count
FROM films
WHERE release_year > 2000 AND budget IS NOT NULL
GROUP BY release_year
HAVING COUNT(*) >= 5
ORDER BY release_year LIMIT 10;
SQL Intermediário com IA

Além da contagem

$$

  • Padrões condicionais funcionam com outros agregados também

$$

  • Experimente condições e limites

$$

  • Revele insights ocultos

$$

Descubra insights

SQL Intermediário com IA

Vamos praticar!

SQL Intermediário com IA

Preparing Video For Download...