Главная страница
    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.01 c
1-1148461081
Aleksandr.
2006-05-24 12:58
2006.07.02
Где можно почитать о вызовах dll, написанных на Delphi, в VB?


6-1140530213
Cyr
2006-02-21 16:56
2006.07.02
Как получить информацию по HTTPS?


3-1146737457
RomanH
2006-05-04 14:10
2006.07.02
Какой модуль использовать?


4-1143522040
MaxxSoft
2006-03-28 09:00
2006.07.02
SendMessage из разных процессов


15-1149493560
patient
2006-06-05 11:46
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский