Soma no SQL

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
  

Mensagemem Sex, 11 Out 2019 9:50 am

Bom dia Colegas

Tenho uma duvida a respeito da função sum no SQL.
Eu tenho uma consulta assim:

Código: Selecionar todos
select sum(valor_venda)
from minha_tabela
where codigo_id =1


Dúvida 1. Eu tenho obrigatoriamente utilizar o group by?
Dúvida 2. Sem o group by, eu vi que o resultado e o tempo de execução é o mesmo, e o custo no explain plan também não se altera (o plano mostra que é utilizado o indice no campo chave (codigo_id). Minha dúvida é entender se tem algo de errado não utilizar o group by , falando em desempenho.

Grata
Lilian_SL
LilianSL

Mensagemem Qua, 06 Nov 2019 9:59 am

A função group by somente será necessária se você utilizar algum outro campo da tabela na query junto com o Sum.
Por exemplo
Código: Selecionar todos
select
campo,
sum(valor_venda)
from minha_tabela
where codigo_id =1
group by campo
marlonpasquali
Localização: ERECHIM - RS

Mensagemem Qua, 06 Nov 2019 6:57 pm

Exato.

O group by, como o próprio nome diz, AGRUPA POR algum campo.
Se você quer pegar a soma TOTAL (apenas 1 linha), não precisa de Group By. Basta ter o SUM.

Mas se você quiser somar algo POR CIDADE, algo assim:
são PAULO 500
RIO DE JAN 850
MANAUS 1100

Dai tem que usar GROUP BY CIDADE.
dr_gori
Localização: Portland, OR USA

Thomas F. G

Você já respondeu a dúvida de alguém hoje?
http://glufke.net/oracle/search.php?search_id=unanswered



Voltar para SQL

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante