Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Outra forma que deu errado

Boa tarde! Eu fiz de outra forma que pensei que funcionaria, porém não deu certo.

SELECT YEAR(DATA_VENDA), QUANTIDADE * PRECO AS FATURAMENTO FROM NOTAS_FISCAIS NF INNER JOIN ITENS_NOTAS_FISCAIS INF ON NF.NUMERO = INF.NUMERO GROUP BY YEAR(DATA_VENDA), FATURAMENTO;

Por que não funcionou? Alguém saberia?

Aproveitando eu não entendi a utilização do SUM() na resposta. Eu pensei que SUM() fosse só para soma.

2 respostas
solução!

Olá João, boa tarde.

Pense assim que ficará fácil de entender pra sempre.

O SUM() é uma função agregada, como toda função agregada ela precisa agrupar todas as colunas do SELECT que não tem função agregada.

Então, exemplo:

Select Year(DATA), Sum(Quantidade) From XPTO Group By Year(DATA)

Nesse exemplo eu quero somar as quantidades vendidas em cada ano. Se tivesse que exibir mais algum campo no select, ele teria que aparecer no group by também. Se quisesse usar outra função agregada no select poderia sem precisar colocar no group by. Simples assim!

Se eu consegui te ajudar, marque a resposta como solucionada, por favor! Abs.

Ahh sim, obrigado Murilo! Eu tenho mesmo é que estudar mais a função SUM() kk

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software