Na atividade onde é solicitada uma pesquisa que retorne a quantidade de impostos pagos em 2016 a solução dada pelo professor no curso é o código:
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
o que retornou o valor total de: 4656937
Eu, no entanto, havia escrito um código diferente, mas pensava que o mesmo valor deveria ser retornado.
SELECT A.NUMERO, A.QUANTIDADE, A.PRECO, B.IMPOSTO, SUM(FLOOR(A.QUANTIDADEA.PRECOB.IMPOSTO)) AS IMPOSTO_PAGO, B.DATA_VENDA FROM itens_notas_fiscais A INNER JOIN notas_fiscais B ON A.NUMERO = B.NUMERO WHERE YEAR(DATA_VENDA) = 2016;
quando agrupei pelo SUM() o valor retornado foi : 4623436
Não estou conseguindo entender o que há com meu código para retornar um valor diferente.