Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.07.02;
Скачать: [xml.tar.bz2];

Вниз

SQL. Вывод первых несколько записей   Найти похожие ветки 

 
worldmen ©   (2006-06-08 12:46) [0]

Как в selecte вывести первые, например 10 записей.
БД - Oracle
(уже задавал этот вопрос но не нашел эту страницу)


 
Sergey13 ©   (2006-06-08 12:48) [1]

select * from (select.... order by...) where rownum<11


 
Perf2k2 ©   (2006-06-08 12:51) [2]

А в Access так нельзя насколько я знаю? пытался как в MySQL лимит пользовать, но не понимает он его.


 
StriderMan ©   (2006-06-08 12:55) [3]

в InterBase можно так  SELECT FIRST 10 * FROM ....

попробуй


 
saxon   (2006-06-08 12:55) [4]

select TOP 10 ...
так не поможет?


 
Perf2k2 ©   (2006-06-08 12:56) [5]


> select TOP 10

Кстати работает! СПС!


 
xfree   (2006-06-08 14:53) [6]

что за ТОР 10, не слышал никогда о таком

еще вариант

select rownum,id,name
from db.town
group by rownum,id,name
having rownum <=10


 
Ega23 ©   (2006-06-08 14:55) [7]


> что за ТОР 10, не слышал никогда о таком


Это из T-SQL диалекта.


 
xfree   (2006-06-08 15:06) [8]

пример запроса полного можешь дать?


 
Ega23 ©   (2006-06-08 15:23) [9]

Limiting Result Sets Using TOP and PERCENT
The TOP clause limits the number of rows returned in the result set.

TOP n [PERCENT]

n specifies how many rows are returned. If PERCENT is not specified, n is the number of rows to return. If PERCENT is specified, n is the percentage of the result set rows to return:

TOP 120 /*Return the top 120 rows of the result set. */
TOP 15 PERCENT /* Return the top 15% of the result set. */.

If a SELECT statement that includes TOP also has an ORDER BY clause, the rows to be returned are selected from the ordered result set. The entire result set is built in the specified order and the top n rows in the ordered result set are returned.

The other method of limiting the size of a result set is to execute a SET ROWCOUNT n statement before executing a statement. SET ROWCOUNT differs from TOP in these ways:

The SET ROWCOUNT limit applies to building the rows in the result set after an ORDER BY is evaluated. When ORDER BY is specified, the SELECT statement is terminated when n rows have been selected from a set of values that has been sorted according to specified ORDER BY classification.

The TOP clause applies to the single SELECT statement in which it is specified. SET ROWCOUNT remains in effect until another SET ROWCOUNT statement is executed, such as SET ROWCOUNT 0 to turn the option off.


Запрос: Slelect top 10 * from sysobjects


 
worldmen ©   (2006-06-08 16:54) [10]

Спасибо, rownum работает.
Я еще не правильно задал вопрос.
Нужно что бы select выводил информацию порциями. Т.к. записей очень много (больше 20000) запрос выполняется долго.
Я хотел бы выводить например по 10-20 строк, потом еще столькоже. Как отдельные страницы.


 
Sergey13 ©   (2006-06-08 16:55) [11]

2 [10] worldmen ©   (08.06.06 16:54)
А не думал над тем, что бы выводить не все записи, а только те которые нужны?


 
Ega23 ©   (2006-06-08 16:55) [12]

Фильтровать такие вещи надо. Вот подумай: ну нафига мне 20000 записей в одном гриде? Что я с ними делать буду? 150 ещё куда ни шло...


 
worldmen ©   (2006-06-08 20:06) [13]


> Ega23 ©   (08.06.06 16:55) [12]
> Фильтровать такие вещи надо. Вот подумай: ну нафига мне
> 20000 записей в одном гриде? Что я с ними делать буду? 150
> ещё куда ни шло...


Это отфильтрованные.


 
ANB ©   (2006-06-08 20:12) [14]


> worldmen ©   (08.06.06 20:06) [13]

Если воспользуешься DOA или ODAC, то там в компонентах есть настройки, по сколько записей фетчить.


 
evvcom ©   (2006-06-09 08:42) [15]


> Я хотел бы выводить например по 10-20 строк

Я так понял, что это типа как на WEB-сайтах, тех же форумах? Тогда [1] чуть модифицировать надо:

select *
from (
 select rownum as rnum, t.*
 from (select.... order by...) t
)
where rnum between 11 and 20

или есть еще вариант с аналитическими функциями, но это ты уж сам, если захочешь.


 
Ega23 ©   (2006-06-09 10:03) [16]


> Это отфильтрованные.


Бедные пользователи твоей программы. Им можно только посочуствовать...



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.07.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.011 c
1-1148540258
.ruslan
2006-05-25 10:57
2006.07.02
...узнать сколько времени прошло (осталось) между датами


15-1149320109
ChelovekABCDEF
2006-06-03 11:35
2006.07.02
Помогите срочно решить задания по физике!!!


3-1146803964
sanchos
2006-05-05 08:39
2006.07.02
Суммирование вычисляемого поля в ADOTable


1-1148291576
Steplerr
2006-05-22 13:52
2006.07.02
Эффективный поиск в Excel


2-1150214511
AlexanderMS
2006-06-13 20:01
2006.07.02
БД. Переход на строку с помощью колёсика мыши.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский