1
resposta

Resolução diferente, mesmo resultado

SELECT * FROM [TABELA DE PRODUTOS]

SELECT * FROM [NOTAS FISCAIS]

SELECT * FROM [ITENS NOTAS FISCAIS]
select        AUX1.SABOR, AUX1.ANO, CONVERT(DECIMAL (15,2), AUX1.FATURAMENTO) as FATURAMENTO, 
CONVERT(VARCHAR, CONVERT (DECIMAL (15,2), (AUX1.FATURAMENTO / AUX2.TOTAL) * 100)) + ' %' as PERCENTUAL
from
(select        TP.SABOR,
            YEAR(NF.[DATA]) as ANO,
            SUM(INF.[QUANTIDADE] * INF.PREÇO) as FATURAMENTO
from        [TABELA DE PRODUTOS] TP,
            [ITENS NOTAS FISCAIS] INF,
            [NOTAS FISCAIS] NF
where        TP.[CODIGO DO PRODUTO] = INF.[CODIGO DO PRODUTO]
      AND    NF.NUMERO = INF.NUMERO
      AND    YEAR(NF.[DATA]) = 2016
            group by TP.SABOR,
            YEAR(NF.[DATA]) ) AUX1
            INNER JOIN
(select        YEAR(NF.[DATA]) as ANO,
            SUM(INF.[QUANTIDADE] * INF.PREÇO) as TOTAL
from        [TABELA DE PRODUTOS] TP,
            [ITENS NOTAS FISCAIS] INF,
            [NOTAS FISCAIS] NF
where        TP.[CODIGO DO PRODUTO] = INF.[CODIGO DO PRODUTO]
      AND    NF.NUMERO = INF.NUMERO
      AND    YEAR(NF.[DATA]) = 2016
            group by  YEAR(NF.[DATA])) AUX2
      on    AUX1.ANO = AUX2.ANO
      order by FATURAMENTO desc
1 resposta

Olá, Fernando, tudo bem?

A sua query ficou muito legal, você está indo muito bem.

Continue assim e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software