1
resposta

[Sugestão] Resolução

Verifiquei que no vídeo da aula não foi aplicado um filtro para retornar os meses de Black Friday, que é o objetivo do exercício, como a filtragem WHERE apresentado em aulas anteriores não dava certo pelo agrupamento, pesquisei uma maneira diferente de consultar e consegui obter êxito, nas duas consultas abaixo consigo trazer o resultado de cada item nos meses de Janeiro, Novembro e Dezembro.

-- Papel dos fornecedores na Black Friday
SELECT 
    STRFTIME("%Y/%m", v.data_venda) AS "Ano/Mês",
    f.nome AS nome_fornecedor,
    COUNT(iv.produto_id) AS qtd_vendas	
FROM
    itens_venda iv
INNER JOIN
    vendas v ON v.id_venda = iv.venda_id
INNER JOIN
    produtos p ON p.id_produto = iv.produto_id 
INNER JOIN 
    fornecedores f ON f.id_fornecedor = p.fornecedor_id
WHERE 
    STRFTIME("%m", v.data_venda) IN ('01', '11', '12')
GROUP BY
    nome_fornecedor,
    "Ano/Mês"
ORDER BY
    "Ano/Mês",
    qtd_vendas;

-- Categorias de produtos na Black Friday
SELECT 
    STRFTIME("%Y/%m", v.data_venda) AS "ano/mes",
    c.nome_categoria,
    COUNT(iv.produto_id) AS vendas
FROM
    itens_venda iv
INNER JOIN
    produtos p ON p.id_produto = iv.produto_id
INNER JOIN 
    vendas v ON v.id_venda = iv.venda_id
INNER JOIN
    categorias c ON c.id_categoria = p.categoria_id 
WHERE 
    STRFTIME("%m", v.data_venda) IN ('01', '11', '12')
GROUP BY
    nome_categoria,
    "ano/mes"
ORDER BY 
    "ano/mes",
    vendas;
1 resposta

Oi Gabriel,

Excelente solução! 👍

Sua abordagem com STRFTIME e IN para filtrar os meses está perfeita e resolve o problema do agrupamento.

As consultas estão claras e bem estruturadas, mostrando o papel dos fornecedores e categorias na Black Friday. 💪

A utilização de STRFTIME("%m", v.data_venda) para extrair o mês e o uso do IN ('01', '11', '12') para filtrar os meses de interesse são técnicas muito úteis em SQL. 💻

Além disso, a organização com GROUP BY e ORDER BY torna os resultados fáceis de analisar.

Para saber mais: Documentação da função STRFTIME do SQLite. Aqui você pode encontrar mais detalhes sobre como formatar datas e horários no SQLite.

Continue explorando e aprimorando suas habilidades em SQL! 🤔