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

Dúvida sobre a utilização obrigatória do INNER JOIN

Professor, estou em dúvida se poderia utilizar a consulta que eu montei ou correria algum risco em outro momento. O exercício proposto é: "Na tabela de notas fiscais, temos o valor do imposto. Já na tabela de itens, temos a quantidade e o faturamento. Calcule o valor do imposto pago no ano de 2016, arredondando para o menor inteiro.". A consulta que eu montei é

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

Porém, você criou a seguinte consulta:

SELECT YEAR(DATA), FLOOR(SUM(IMPOSTO * (QUANTIDADE * PREÇO))) --resposta do professor
FROM [NOTAS FISCAIS] NF
INNER JOIN [ITENS NOTAS FISCAIS] INF ON NF.NUMERO = INF.NUMERO
WHERE YEAR(DATA) = 2016
GROUP BY YEAR(DATA)
1 resposta
solução!

Olá Igor, tudo bem?

A sua query é sim válida Igor, e você pode utiliza-lá sem medo. Antes de o JOIN ser implementado nos bancos de dados SQL, essa era a forma utilizada para realizar consultas em mais de uma tabela na mesma query. Achei bem legal também a forma como você utilizou a Subconsulta.

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

Continue assim e bons estudos Igor!