Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
1
resposta

SUGESTÃO DE RESPOSTA PARA O EXERCICIO, COM ARREDONDAMENTO

SELECT X.CPF, X.NOME, X.MES_ANO, X.QUANTIDADE_VENDAS, X.QUANTIDADE_LIMITE,
CASE WHEN (X.QUANTIDADE_LIMITE - X.QUANTIDADE_VENDAS) < 0
 THEN 'INVÁLIDA'
ELSE 'VÁLIDA' 
END AS STATUS_VENDA, ROUND(
(1-( QUANTIDADE_LIMITE/X.QUANTIDADE_VENDAS))*100,2) AS DIFPERCENTUAL

FROM (
SELECT NF.CPF, TC.NOME, DATE_FORMAT(NF.DATA_VENDA, '%m-%Y') AS MES_ANO
, SUM(INF.QUANTIDADE) AS QUANTIDADE_VENDAS 
, MAX(TC.VOLUME_DE_COMPRA) AS QUANTIDADE_LIMITE
 FROM NOTAS_FISCAIS NF
INNER JOIN ITENS_NOTAS_FISCAIS INF
ON NF.NUMERO = INF.NUMERO
INNER JOIN TABELA_DE_CLIENTES TC 
ON TC.CPF = NF.CPF

GROUP BY TC.CPF, TC.NOME, DATE_FORMAT(NF.DATA_VENDA, '%m-%Y')) X
having STATUS_VENDA = 'INVÁLIDA'
;
1 resposta
solução!

Olá Luciano, tudo bem?

Bem legal Luciano você ter utilizado o ROUND na sua resposta para a atvidade.

Foi bem legal também você ter compartilhado aqui com a gente a sua query:)

Continue assim e bons estudos!