![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как в SQL выгребсти записи с n1 по n2 [D6, FireBird]
Man © (2003-10-25 15:47:00)
Привет всем!Такой вопрос.Как в сиквеле выгребсти записи с n1 по n2(разбор идёт по индексу).
Zacho (2003-10-26 14:43:00) [1]
2 Man © :
В FireBird и Yaffil есть FIRST .. SKIP .. , в IB7 тоже что-то есть (синтаксис не помню), в других версиях IB - только хранимой процедурой.
P.S. В подавляющем большинстве случаев это вообще не надо.
sniknik (2003-10-25 21:35:00) [2]
http://www.delphikingdom.ru/mastering/strproc.htm
пункт 3
(оставим рассуждения о бессмысленности порядковых номеров в sql, если хочется делай, но лутше конечно задачу пересмотреть)
кстати поиск занял буквально пару минут.
man (2003-10-25 20:06:00) [3]
Смотрел доку и не нашёл,поэтому обратился сюда:мот я чего не доглядел.
sniknik (2003-10-25 19:42:00) [4]
man © (25.10.03 18:54) [9]
почему бы не посмотреть в документации? кстати TOP в FireBird тоже возможно нет (сбило упомянутое "сиквел", так обычно MSSQL называют).
man (2003-10-25 18:54:00) [5]
Нет ли стандартного выражения для данной операции?
К примеру,в Oracle есть понятие rownum - номер записи набора данных...
sniknik (2003-10-25 18:32:00) [6]
задавай условие так, чтобы запрос возвращал записи с 20 по 50 (в твоих понятиях)
см.
kaif © (25.10.03 16:11) [1]
это правильно.
неправильно но тоже можно через ограничитель TOP (пара вложеных запросов получится с сортировкой сначала ASС после DESС)
man (2003-10-25 18:22:00) [7]
В SQL можно указать план разбора.
Вообще говоря,вопрос же не в этом:есть отсортированный набор даннх,мне нужно из него выгребсти с 20 по 50 запись.
man (2003-10-25 18:22:00) [8]
В SQL можно указать план разбора.
Вообще говоря,вопрос же не в этом:есть отсортированный набор данных,мне нужно из него выгребсти с 20 по 50 запись.
Anatoly Podgoretsky (2003-10-25 17:52:00) [9]
SQL не возвращает записи отсортированные по индексу, ему глубоко плевать на индекс при выдаче данных.
Man (2003-10-25 17:50:00) [10]
Представление проблемы:
SQL запрос возвращает 100 записей(отсорт. по индексу),я хочу дополнить сиквел таким образом,чтобы были записи только,к примеру, с 20 по 50.
Anatoly Podgoretsky (2003-10-25 16:18:00) [11]
И в дополнение индексы SQL не поддерживает, поэтому никакой разборки по ним и речи быть не может.
mOOx_ (2003-10-25 16:16:00) [12]
Да уж, исчерпывающее представление проблемы :)
kaif (2003-10-25 16:11:00) [13]
Что такое n1 и n2 ?
Если это значения какого-то поля, то
SELECT ... FROM ... WHERE <поле> BETWEEN n1 AND n2