SELECT
TC.CPF,
TC.NOME,
TC.VOLUME_DE_COMPRA,
ROUND((CASE WHEN TC.VOLUME_DE_COMPRA < TV.QUANTIDADE_TOTAL THEN (1 -(TC.VOLUME_DE_COMPRA/TV.QUANTIDADE_TOTAL)) * 100
ELSE 0 END),2) AS PORCENTAGEM,
TV.QUANTIDADE_TOTAL,
TV.MES_ANO,
(CASE WHEN TC.VOLUME_DE_COMPRA >= TV.QUANTIDADE_TOTAL THEN 'Venda Válida'
ELSE 'Venda acima do valor correto' END) AS RESULTADO
FROM
TABELA_DE_CLIENTES TC
INNER JOIN
(SELECT NF.CPF,
TO_CHAR(NF.DATA_VENDA, 'MM-YYYY') AS MES_ANO,
SUM(ITEM.QUANTIDADE) AS QUANTIDADE_TOTAL
FROM
NOTAS_FISCAIS NF
INNER JOIN
ITENS_NOTAS_FISCAIS ITEM
ON
NF.NUMERO = ITEM.NUMERO
GROUP BY NF.CPF, TO_CHAR(NF.DATA_VENDA, 'MM-YYYY')) TV
ON
TC.CPF = TV.CPF
WHERE TV.MES_ANO = '02-2015' AND TC.VOLUME_DE_COMPRA - TV.QUANTIDADE_TOTAL < 0
ORDER BY TC.NOME;