SELECT
TC.CPF, TC.NOME, TC.VOLUME_DE_COMPRA, TV.MES_ANO, TV.QUANTIDADE_TOTAL,
(CASE WHEN TC.VOLUME_DE_COMPRA >= TV.QUANTIDADE_TOTAL THEN 'VENDAS VÁLIDAS'
ELSE 'VENDAS INVÁLIDAS' END) AS TIPO_VENDA,
ROUND((1-(TC.VOLUME_DE_COMPRA/TV.QUANTIDADE_TOTAL))*100,2)|| '%' LIMITE_ULTRAPASSADO
FROM
TABELA_DE_CLIENTES TC
INNER JOIN
(SELECT
NF.CPF,
TO_CHAR(NF.DATA_VENDA,'MM-YYYY') AS MES_ANO,
SUM(INF.QUANTIDADE) AS QUANTIDADE_TOTAL
FROM
NOTAS_FISCAIS NF
INNER JOIN
ITENS_NOTAS_FISCAIS INF
ON NF.NUMERO = INF.NUMERO
GROUP BY
CPF, TO_CHAR(NF.DATA_VENDA,'MM-YYYY')
) TV
ON TV.CPF = TC.CPF
WHERE TV.MES_ANO = '02-2015'
AND (VOLUME_DE_COMPRA - QUANTIDADE_total) < 0
ORDER BY NOME;
RESULTADO:
2600586709 Cesar Teixeira 22000 02-2015 22949 VENDAS INVÁLIDAS 4.14% 492472718 Eduardo Jorge 9500 02-2015 17072 VENDAS INVÁLIDAS 44.35% 5576228758 Petra Oliveira 16000 02-2015 19103 VENDAS INVÁLIDAS 16.24% 94387575700 Walber Lontra 12000 02-2015 17373 VENDAS INVÁLIDAS 30.93%