Olá, gostaria de filtrar os resultados obtidos para que só apareçam as linhas que tenham vendas inválidas, porém quanto tento colocar o CASE dentro do WHERE, ele apresenta erro. Também apresenta erro quando tento colocar o alias STATUS_VENDA. Tentei também colocando a condição em si "where (max(VOLUME_DE_COMPRA) - sum(quantidade)) < 0", mas apresenta erro novamente. Poderiam me ajudar? Obrigado.
select x.nome, x.mes_ano, x.quantidade_venda, x.limite_compra, case when (x.limite_compra-x.quantidade_venda) < 0 then 'Inválido' else 'Válido' end as status_venda from (select nf.cpf, c.nome, date_format(data_venda,'%Y-%m') AS MES_ano, sum(quantidade) as quantidade_Venda, max(VOLUME_DE_COMPRA) as limite_compra from itens_notas_fiscais inf inner join notas_fiscais nf on inf.numero = nf.numero inner join tabela_de_clientes c on nf.cpf = c.cpf group by cpf, date_format(data_venda,'%Y-%m')) x
where (max(VOLUME_DE_COMPRA) - sum(quantidade)) < 0