1
resposta

O meu resultado ficou diferente do instrutor.

select year(b.data_venda) as ANO, sum(round(a.quantidade * a.preco, 2)) as FATURAMENTO,
sum(round(a.quantidade * a.preco * b.imposto, 2)) as IMPOSTO 
from itens_notas_fiscais as a inner join
notas_fiscais b on a.numero = b.numero
WHERE year(b.data_venda) = 2016 
1 resposta

Olá Jonas, tudo bem?

Parabéns pela sua query Jonas, o seu resultado ficou diferente da do instrutor por alguns motivos:

  • Para calcular o imposto o instrutor utilizou a seguinte forma:
FLOOR(SUM(IMPOSTO * (QUANTIDADE * PRECO)))
  • Já você utilizou uma forma diferente:
sum(round(a.quantidade * a.preco * b.imposto, 2)) as IMPOSTO 
  • E por fim, o intrutor utilizou o GROUP By para agrupar o resultado por ano
GROUP BY YEAR(DATA_VENDA)

Vou deixar aqui para você a query completa do instrutor:

SELECT YEAR(DATA_VENDA), FLOOR(SUM(IMPOSTO * (QUANTIDADE * PRECO))) 
FROM notas_fiscais NF
INNER JOIN itens_notas_fiscais INF ON NF.NUMERO = INF.NUMERO
WHERE YEAR(DATA_VENDA) = 2016
GROUP BY YEAR(DATA_VENDA)

Foi bem legal você ter compartilhado aqui com a gente a sua resposta para atividade Jonas :).

Continue assim e bons estudos!