Corrija o bugPráticaSQL
Corrigir filtro de `total` em `2024`
Corrigir o filtro da soma para manter só categorias com total alto em 2024.
Da tabela vendas, fique só com as linhas de ano igual a 2024, agrupe por categoria e some valor como total. Devolva as colunas categoria e total só para os grupos com total maior que 100. A consulta no editor deveria produzir esse resultado, mas falha. Corrija-a.
Revisa etapa da trilha 6, etapa da trilha 8
Solução comentada
Verifique uma tentativa sua para liberar a solução.
SELECT categoria, SUM(valor) AS total FROM vendas WHERE ano = 2024 GROUP BY categoria HAVING SUM(valor) > 100WHERE ano = 2024 filtra as linhas antes de agrupar. GROUP BY categoria com SUM(valor) soma o valor por grupo e ignora o NULL. HAVING SUM(valor) > 100 filtra depois da agregação, por isso não pode ir no WHERE.
Erro comum: Tentar filtrar a soma com WHERE em vez de usar HAVING depois do GROUP BY.
Tabelas
vendas 10 linhas
| id | categoria | cidade | valor | ano |
|---|---|---|---|---|
| 1 | calcados | sao paulo | 120 | 2024 |
| 2 | calcados | sao paulo | 80 | 2024 |
| 3 | vestuario | rio de janeiro | 50 | 2024 |
| 4 | vestuario | rio de janeiro | 40 | 2024 |
| 5 | vestuario | belo horizonte | 30 | 2023 |
| 6 | eletronicos | sao paulo | 500 | 2024 |
| 7 | eletronicos | rio de janeiro | NULL | 2024 |
| 8 | livros | sao paulo | 25 | 2024 |
| 9 | livros | sao paulo | 25 | 2024 |
| 10 | livros | curitiba | 20 | 2023 |
O código ao lado tem um bug. Encontre, corrija e verifique.