|
Запрос к большой таблице
|
|||
---|---|---|---|
#18+
Добрый день, коллеги. Есть таблица с большим количеством записей и к которой выполняются запросы типа Select * from myTable Есть переменная, содержащая в себе количество строк, которое нужно отобразить. Как реализовать следующую логику: если количество возвращаемых строк меньше заданного в переменной количества, то отобразить все строки, иначе - спросить выводить все или остановиться. Задача в том, чтоб не вытягивать все строки из таблицы на клиента. База - Терадата. Коннектчусь через ODBC. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2012, 14:46 |
|
Запрос к большой таблице
|
|||
---|---|---|---|
#18+
Попробуйте такой запрос: SELECT TOP(100) * FROM [your_table] ORDER BY [some_field] - так будет извлечено первые 100 записей. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2012, 12:46 |
|
Запрос к большой таблице
|
|||
---|---|---|---|
#18+
Если у Вы используете MS SQL Server 2008, то можете использовать переменную прямо на SQL-е так: TOP (record_count) если версия ниже или не MS SQL, то сделайте на уровне ADO.NET так: string.Format("SELECT TOP({0} * FROM [your_table] ORDER BY [some_field]", recordCount); ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2012, 12:49 |
|
|
start [/forum/topic.php?fid=17&gotonew=1&tid=1350417]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
62ms |
get topic data: |
11ms |
get first new msg: |
9ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 316ms |
total: | 477ms |
0 / 0 |