Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Sugestão] Respondendo à pergunta do enunciado

A solução proposta no exercício não agrupa todas as notas fiscais de cada cliente no ano, mas apresenta o valor das notas emitidas em cada data do ano de 2016. Para fazer sentido e apresentar conforme o enunciado 'um SQL cujo resultado seja para cada cliente: "O cliente João da Silva comprou R$ 121222,12 no ano de 2016".', faz-se necessário agrupar a data pelo ano e não por cada data. Uma forma seria assim:

SELECT TC.NOME, CONCAT('O cliente ', TC.NOME, ' comprou R$ ',
TRIM(STR(SUM(IT.QUANTIDADE * IT.PRECO) ,10,2)), ' no ano de ', YEAR(NF.DATA_VENDA), '.') AS VALOR
FROM NOTAS_FISCAIS AS NF
INNER JOIN ITENS_NOTAS_FISCAIS AS IT ON NF.NUMERO = IT.NUMERO
INNER JOIN TABELA_DE_CLIENTES AS TC ON NF.CPF = TC.CPF
WHERE YEAR(NF.DATA_VENDA) = '2016'
GROUP BY TC.NOME, YEAR(NF.DATA_VENDA);
1 resposta
solução!

Oi, Natália, tudo bem?

Checamos a resolução e realmente a query está retornando um valor diferente do que o esperado. Aproveitamos a sua dica e colocamos sua consulta como o exemplo pra resposta, pois ela está certinha!

Obrigada pela dica. Se outra sugestão surgir, sinta-se à vontade para postar. =)

Abraços!