Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
waszkiewicz Member Откуда: Сообщений: 1089 |
имеется таблица регистраций, упрощенно
для каждой пары who,subj нужно выбрать запись с максимальной датой делаю так select * from task_reg t where [date]=(select max([date]) from task_reg tt where tt.ac=t.ac and tt.tasknumber=t.tasknumber) and ac=18 как-то можно оптимизировать? (полей помимо приведенных еще с десяток) |
||||
17 ноя 15, 13:30 [18428992] Ответить | Цитировать Сообщить модератору |
Добрый Э - Эх
Guest |
waszkiewicz, способов - вагон и маленькая тележка... |
17 ноя 15, 13:34 [18429031] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47047 |
WITH CTE AS ( SELECT N=ROW_NUMBER()OVER(PARTITION BY ac,tasknumber ORDER BY [date] DESC),* FROM task_reg ) SELECT * FROM CTE WHERE N=1; |
17 ноя 15, 13:35 [18429036] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |