WITH TBL1 AS (
SELECT
TB.SABOR,
YEAR(NF.DATA_VENDA) AS ANO,
SUM(INF.QUANTIDADE) AS VENDA_ANO
FROM
TABELA_DE_PRODUTOS TB
INNER JOIN
ITENS_NOTAS_FISCAIS INF ON TB.CODIGO_DO_PRODUTO = INF.CODIGO_DO_PRODUTO
INNER JOIN
NOTAS_FISCAIS NF ON NF.NUMERO = INF.NUMERO
WHERE
YEAR(NF.DATA_VENDA) = 2015
GROUP BY
TB.SABOR, YEAR(NF.DATA_VENDA)
),
TBL2 AS (
SELECT
YEAR(NF.DATA_VENDA) AS ANO,
SUM(INF.QUANTIDADE) AS VENDA_TOTAL_ANO
FROM
NOTAS_FISCAIS NF
INNER JOIN
ITENS_NOTAS_FISCAIS INF ON NF.NUMERO = INF.NUMERO
WHERE
YEAR(NF.DATA_VENDA) = 2015
GROUP BY
YEAR(NF.DATA_VENDA)
)
SELECT
TBL1.*,
-- TBL2.VENDA_TOTAL_ANO,
ROUND((TBL1.VENDA_ANO * 100.0) / NULLIF(TBL2.VENDA_TOTAL_ANO, 0), 2) AS PERCENTUAL
FROM
TBL1
INNER JOIN
TBL2 ON TBL1.ANO = TBL2.ANO
ORDER BY
PERCENTUAL DESC;