Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
31.03.2011, 11:02
|
|||
---|---|---|---|
Помогите составить запрос: выбрать "последнюю запись" для каждого объекта |
|||
#18+
Sybase ASE. Есть табличка Код: plaintext 1. 2. 3. 4. 5. 6.
в неё заносится время старта и завершения некоего процесса name, и его свойства на тот момент. Естественно name периодически повторяется, но с другим временем старта и завершения. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
т.е. вернет namestartfinish property1 property2"delta""Feb 18 2011 3:25AM" "Feb 18 2011 3:26AM"52"alfa""Feb 19 2011 3:02AM" "Feb 19 2011 3:11AM"42"beta""Feb 19 2011 3:12AM" "Feb 19 2011 3:26AM"32"gamma""Feb 19 2011 3:26AM" "Feb 19 2011 3:40AM"22 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
31.03.2011, 12:37
|
|||
---|---|---|---|
|
|||
Помогите составить запрос: выбрать "последнюю запись" для каждого объекта |
|||
#18+
blzzНужно составить запрос, который для каждой name вернет запись для за последную дату finish. Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
31.03.2011, 12:47
|
|||
---|---|---|---|
Помогите составить запрос: выбрать "последнюю запись" для каждого объекта |
|||
#18+
закинуть во времянку или использовать как подзапрос результаты запроса create table #t( name varchar(30) max_finish datetime null ) insert into #t (name, max_finish) select name, max(finish) from report group by name; итоговая выборка строится как объединение c этим фильтром select r.* from report r join #t t on (r.name=t.name) where r.finish=t.max_finish Простой, но дубовый вариант, мне не нравится, просто в записи коротко. select r.* from report r where r.finish=(select max(r2.finish) from report r2 where r2.name=r.name) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
31.03.2011, 13:42
|
|||
---|---|---|---|
Помогите составить запрос: выбрать "последнюю запись" для каждого объекта |
|||
#18+
invariant Код: plaintext 1.
Спасибо. делает то то надо. Про having слышал но не понимал как им пользоваться, в where max() не засунешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=55&mobile=1&tid=2010370]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 137ms |
0 / 0 |