powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Вариация на тему "SELECT выборкой от N до М записей"
2 сообщений из 2, страница 1 из 1
Вариация на тему "SELECT выборкой от N до М записей"
    #32022862
HotDog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как основу для запроса взял вариант, который предлагал Glory в одной из подобных тем.
Разница заключается в том, что мне нужно сделать выборку не по ID, а по дате.

Сейчас у меня сделано так:

\n declare @time datetime
set @time = GETDATE()

SELECT MsgID AS OrigId, @time as lst INTO #tmp1 FROM tblCppMessages where ParentID = 0 group by MsgID
update #tmp1 set lst=LastChange FROM tblCppMessages where MsgID = OrigId

SELECT identity(int, 1,1) AS RowNum, OrigId AS OrigId INTO #tmp2 FROM #tmp1 order by lst desc
drop table #tmp1

SELECT OrigId AS [ID] FROM #tmp2 where RowNum between (@rec_per_page * (@page_num-1) +1) AND (@rec_per_page * (@page_num))
DROP TABLE #tmp2



Т.е. к примеру есть несколько записей у которых MsgID один и тот же, дата обновления разная и только у одной записи ParentID = 0. (чтобы нагляднее понять можете заглянуть на http://www.cppforum.net в любой из форумов)
Так вот, можно ли каким то образом в первом селекте скопировать так же и дату сообщения? Т.е. обойтись без Update ?
...
Рейтинг: 0 / 0
Вариация на тему "SELECT выборкой от N до М записей"
    #32022864
HotDog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ок, пока писал сам понял где можно подкрутить

\n SELECT MsgID AS OrigId, LastChange as lst INTO #tmp1 FROM tblCppMessages where ParentID = 0

SELECT identity(int, 1,1) AS RowNum, OrigId AS OrigId INTO #tmp2 FROM #tmp1 order by lst desc
drop table #tmp1

SELECT OrigId AS [ID] FROM #tmp2 where RowNum between (@rec_per_page * (@page_num-1) +1) AND (@rec_per_page * (@page_num))
DROP TABLE #tmp2



Можно ли еще как то оптимизировать запрос ?
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Вариация на тему "SELECT выборкой от N до М записей"
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]