1
resposta

Dúvida sobre o exercício 06, aula 05

No exercício em questão, nos pede para que seja feito um cálculo dos tributos das notas fiscais por período. Porém, realizar o join entre as tabelas [ITENS NOTAS FISCAIS] e [NOTAS FISCAIS] não faz sentido, visto que se o imposto é informado apenas na tabela de capa da nota fiscal, deve ser considerado que aquele é o valor total dos impostos por nota. sendo assim, não há a necessidade de um join para chegar no cálculo. E se o fizermos, não retornará o valor correto do que foi solicitado. Vejam os comandos abaixo:

SELECT YEAR(DATA), FLOOR(SUM(IMPOSTO  (QUANTIDADE  PREÇO))) 
FROM [NOTAS FISCAIS] NF
INNER JOIN [ITENS NOTAS FISCAIS] INF ON NF.NUMERO = INF.NUMERO
WHERE YEAR(DATA) = 2016
GROUP BY YEAR(DATA)

Resultado: 4.656.937 (estaria correto, se o campo imposto fosse pertencente à tabela [ITENS NOTAS FISCAIS]).

SELECT YEAR(DATA) AS [ANO DO FATURAMENTO],
FLOOR(SUM(IMPOSTO)) AS [TOTAL DOS TRIBUTOS]
FROM [NOTAS FISCAIS]
WHERE YEAR(DATA) = 2016
GROUP BY YEAR(DATA)

Resultado: 3.000 (resultado levando em consideração a minha linha de raciocínio quanto à disposição dos campos).

1 resposta

Olá Jefferson, tudo bem?

Desde já peço desculpas pela demora em obter retorno.

De fato, o imposto é informado apenas na tabela nota fiscal, e ele já é considerado o valor total da nota. Obrigada pelo feedback, ele é importante para o aperfeiçoamento dos cursos.

Aproveito para comunicar que esse curso ganhou uma versão atualizada: Microsoft SQL Server 2022: consultas avançadas.

Espero ter ajudado.

Caso surja quaisquer dúvidas, fico à disposição.

Abraços !