Вопрос противоречащий всем основам реляциоонной теории.
Скажем есть таблица. В ней скажем есть миллион записей. Из этой таблицы с помощью запроса выбирается 10 тыс каких то там записей. Так вот есть ли какой нить способ элегантно вытащить одну (одну!) запись из этих 10 тыс которая скажем находится на месте номер 1245 в этом результируещем запросе? Скажем слово TOP позволяем получить первую или 50 первых. А вот одну в определенном порядке?
Можно конечно выдрать все 10 тыс записей в клиентское приложение, там они засунуться в объект, в объекте все строки пронумерованы и все элементарно. ТОка вот ежели записей скажем будет 200 тыс то клиент могет крякнуться...
В общем теоретическая постановка задачи такова - заставить сервер теоретически рассчиать результирубщий набор (как в курсоре), пронумеровать строки, найти идентификатор стороки в таблице по заданному номеру строки в курсоре (наборе) пихнуть одну такую. строку куда надо.
Дурацкий вопрос про MS SQL Server
Правила форума
Пожалуйста, ознакомьтесь с правилами данного форума
Пожалуйста, ознакомьтесь с правилами данного форума
-
- Маньяк
- Сообщения: 2841
- Зарегистрирован: 20 фев 2003, 09:15
- Откуда: Vancouver
-
- Пользователь
- Сообщения: 96
- Зарегистрирован: 19 фев 2005, 10:10
- Откуда: GTA - Brampton
-
- Маньяк
- Сообщения: 2841
- Зарегистрирован: 20 фев 2003, 09:15
- Откуда: Vancouver
-
- Пользователь
- Сообщения: 107
- Зарегистрирован: 02 авг 2004, 22:00
MSSQL
Vovchikубедись что твои индех в порядке.
Другои пример на NorthWind database
SELECT <column lists> FROM Orders WHERE 8=(SELECT COUNT(*) FROM Orders o
WHERE O.orderId<=Orders.Orderid)
ORDER BY Orderid DESC
Другои пример на NorthWind database
SELECT <column lists> FROM Orders WHERE 8=(SELECT COUNT(*) FROM Orders o
WHERE O.orderId<=Orders.Orderid)
ORDER BY Orderid DESC
-
- Пользователь
- Сообщения: 96
- Зарегистрирован: 19 фев 2005, 10:10
- Откуда: GTA - Brampton
Re: MSSQL
That's a different task.