1
resposta

RESPOSTA

SELECT VENDA_TAMANHO.TAMANHO, VENDA_TAMANHO.ANO_DA_VENDA, VENDA_TAMANHO.QUANTIDADE, ROUND((VENDA_TAMANHO.QUANTIDADE / VENDA_TOTAL.QUANTIDADE_TOTAL)*100,2) AS PORCENTAGEM FROM 

(SELECT TP.TAMANHO, DATE_FORMAT(NF.DATA_VENDA, '%Y') AS ANO_DA_VENDA, SUM(INF.QUANTIDADE) AS QUANTIDADE
FROM NOTAS_FISCAIS NF
INNER JOIN itens_notas_fiscais INF
ON NF.NUMERO = INF.NUMERO
INNER JOIN tabela_de_produtos TP
ON TP.CODIGO_DO_PRODUTO = INF.CODIGO_DO_PRODUTO
WHERE DATE_FORMAT(NF.DATA_VENDA, '%Y') = 2016
group by tp.TAMANHO,  DATE_FORMAT(NF.DATA_VENDA, '%Y')) AS VENDA_TAMANHO 

INNER JOIN

(SELECT DATE_FORMAT(NF.DATA_VENDA, '%Y') AS ANO_DA_VENDA, SUM(INF.QUANTIDADE) AS QUANTIDADE_TOTAL  # DEFININDO A QUANTIDADE TOTAL VENDIDA EM 2016
FROM NOTAS_FISCAIS NF
INNER JOIN itens_notas_fiscais INF
ON NF.NUMERO = INF.NUMERO
INNER JOIN tabela_de_produtos TP
ON TP.CODIGO_DO_PRODUTO = INF.CODIGO_DO_PRODUTO
WHERE DATE_FORMAT(NF.DATA_VENDA, '%Y') = 2016
group by  DATE_FORMAT(NF.DATA_VENDA, '%Y')) AS VENDA_TOTAL

ON VENDA_TAMANHO.ANO_DA_VENDA = VENDA_TOTAL.ANO_DA_VENDA

ORDER BY PORCENTAGEM DESC;
1 resposta

Olá Eder, tudo bem?

A sua query funcionou direitinho e ficou bem legal.

Foi bem legal também você ter compartilhado aqui no fórum a sua resposta para a atividade :).

Continue assim, qualquer dúvida é só falar Eder e bons estudos!