Array
(
)

Posso fazer um MAX de um SUM?

Rsaforuns
   - 28 mai 2009

Olá,

Posso obter um valor máximo de uma coluna que estou fazendo uma soma?
Exemplo:
Preciso saber qual o dia que teve mais vendas.
select sum(venda.valor) from venda group by data_venda

Posso fazer:
select max(sum(venda.valor)) from venda group by data_venda

Obrigado

Fredgentil
   - 29 mai 2009

O SQL server não aceita a agregação de funções ex. (max(count(...)), por exemplo.
O que você pode fazer é fazer o sum mandando ordenar de forma decrescente pelo campo calculado e fazer uma subconsulta retornando o top 1 da lista.
Se você desejar retornar mais de um resultado, caso os maiores sejam iguais você pode fazer campo somado = TOP 1.

Citação:
Olá,

Posso obter um valor máximo de uma coluna que estou fazendo uma soma?
Exemplo:
Preciso saber qual o dia que teve mais vendas.
select sum(venda.valor) from venda group by data_venda

Posso fazer:
select max(sum(venda.valor)) from venda group by data_venda

Obrigado