Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Сумма максимальных значений  [new]
relief
Member

Откуда:
Сообщений: 1197
Привет

есть таблица с такими полями

Priority, Sum, Id

Надо взять сумму Sum для опреденного Id у которого максимальный Priority.
Как?

т.е. может быть так

Priority, Sum, Id
1 100 1
1 200 1
11 100 1
11 200 1
13 100 1
3 сен 12, 15:23    [13106375]     Ответить | Цитировать Сообщить модератору
 Re: Сумма максимальных значений  [new]
SHok_by
Member

Откуда: Minsk
Сообщений: 51
мой вариант:
SELECT Sum FROM TABLE AS T
INNER JOIN (SELECT MAX(Priority) AS Priority,Id FROM TABLE WHERE Id = 1 GROUP BY Id) AS t1
ON T.Priority = t1.Priority AND y.id = t1.id
3 сен 12, 15:28    [13106413]     Ответить | Цитировать Сообщить модератору
 Re: Сумма максимальных значений  [new]
SHok_by
Member

Откуда: Minsk
Сообщений: 51
или так:
SELECT TOP 1 SUM FROM TABLE 
WHERE id = 1 
ORDER BY Priority DESC
3 сен 12, 15:31    [13106427]     Ответить | Цитировать Сообщить модератору
 Re: Сумма максимальных значений  [new]
nezhadnye_my
Guest
тогда во втором варианте надо дописать WITH TIES,
или они неравноценны:
если еще добавить строку данных (13, 500, 1), то вариант1 вернет 2 строки, а вариант2 одну
3 сен 12, 16:39    [13107023]     Ответить | Цитировать Сообщить модератору
 Re: Сумма максимальных значений  [new]
SHok_by
Member

Откуда: Minsk
Сообщений: 51
Поставленная задача немного размыта.
2 селекта что я написал - мои рассуждения вслух на имеющихся данных ) не судите строго.
3 сен 12, 17:03    [13107244]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить