Escreva o códigoDesafioSQL
Categorias populares com letra a
Achar categorias com mais de uma venda concluida com a no nome.
A loja quer premiar categorias com pelo menos duas vendas concluidas de produtos com letra a no nome. Da tabela vendas, fique só com status igual a concluida e produto contendo a com LIKE. Devolva as colunas categoria e media, onde media é AVG(valor) do grupo, só para grupos com mais de uma venda, em ordem decrescente de media.
Revisa aula 12 (31/08), aula 13 (03/09)
Solução comentada
Verifique uma tentativa sua para liberar a solução.
SELECT categoria, AVG(valor) AS media FROM vendas WHERE status = 'concluida' AND produto LIKE '%a%' GROUP BY categoria HAVING COUNT(*) > 1 ORDER BY media DESC;O WHERE com AND e LIKE '%a%' seleciona só concluidas com a antes de agrupar. O GROUP BY categoria com HAVING COUNT(*) > 1 elimina acessorio que tem só uma linha no segundo banco, e o ORDER BY media DESC mostra calcado antes de roupa.
Erro comum: Esquecer o HAVING e devolver acessorio com uma venda só no segundo banco.
Tabelas
vendas 10 linhas
| id | produto | categoria | valor | status |
|---|---|---|---|---|
| 1 | Camiseta Azul | roupa | 80 | concluida |
| 2 | Camiseta Preta | roupa | 90 | concluida |
| 3 | Tenis Corrida | calcado | 250 | concluida |
| 4 | Tenis Casual | calcado | 200 | pendente |
| 5 | Bone Vermelho | acessorio | 40 | concluida |
| 6 | Meia Branca | acessorio | 20 | cancelada |
| 7 | Calca Jeans | roupa | 150 | concluida |
| 8 | Chinelo Praia | calcado | 50 | concluida |
| 9 | Cinto Couro | acessorio | 40 | pendente |
| 10 | Camiseta Verde | roupa | NULL | pendente |
Escreva sua solução e verifique quando quiser.