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

Chamando os atributos das tabelas

Na correção do exercício foi colocado da seguinte maneira: SELECT YEAR(DATA), SUM (QUANTIDADE * [PREÇO]) AS FATURAMENTO FROM [NOTAS FISCAIS] NF INNER JOIN [ITENS NOTAS FISCAIS] INF ON NF.NUMERO = INF.NUMERO GROUP BY YEAR(DATA)

Como que no começo da query ele sabe de que tabela vem Data, Quantidade, Preço? Eu não teria que colocar [NOTAS FISCAIS].DATA, [ITENS NOTAS FISCAIS].QUANTIDADE, [ITENS NOTAS FISCAIS].PRECO ou NF.DATA, INF.QUANTIDADE, INF.PRECO?

1 resposta
solução!

Olá Thiago, tudo bem? Nesse caso não é preciso identificar de qual tabela é cada campo, como você indicou [NOTAS FISCAIS].DATA, [ITENS NOTAS FISCAIS].QUANTIDADE, [ITENS NOTAS FISCAIS].PRECO, isso porque ambas as tabelas não têm campos em comum ou iguais a não ser o campo "NUMERO" que usamos para fazer o JOIN. Se você executar a seguinte query:

SELECT * FROM [NOTAS FISCAIS] NF INNER JOIN [ITENS NOTAS FISCAIS] INF ON NF.NUMERO = INF.NUMERO

O campos retornados serão: CPF, MATRICULA, DATA, NUMERO, IMPOSTO, NUMERO, [CODIGO DO PRODUTO], QUANTIDADE, [PREÇO]. Ou seja o único campo igual é o campo NUMERO e portanto só aparece uma vez no resultado.

Espero ter esclarecido sua dúvida!