|
|
|
как составить оптимальный по быстродействию запрос для страницы поиска
|
|||
|---|---|---|---|
|
#18+
задача выбора ограниченного числа записей, но не с первой , а с определенного номера, так как это делается на поисковых серверах поиск осуществляется по полнотекстовому индексу сейчас веб - форма делает выборку запуская процедуру содержащую: Код: plaintext 1. 2. 3. как оказалось в случае большого объема данных происходят тормоза при форматировании данных скриптом да и страница выводящая 1000 и более записей не нужна никому, на поисковых системах делают выборки по 10 - 20 записей Хочется сделать нечто подобное чтобы не изобретать велосипед - подскажите как составить запрос чтобы он отнимал поменьше ресурсов у сервера. пока пришло в голову только следующее Код: plaintext 1. 2. 3. 4. 5. 6. 7. но в данном запросе меня несколько огорчает что выборка по полнотекстовому индексу выполняется дважды. может у кого есть наработки как это сделать лучше ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2002, 13:06:19 |
|
||
|
как составить оптимальный по быстродействию запрос для страницы поиска
|
|||
|---|---|---|---|
|
#18+
Я в таких случаях сливаю результаты во временную таблицу и всю страничную разблюдовку делаю с ней. Плюс - громоздкий запрос работает один раз, минус - изменения в базе, произошедшие после первого запроса не выводятся. Если используется ASP, то можно воспользоваться встроенным в ADODB.RecordSet механизмом разбивки на страницы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2002, 13:17:31 |
|
||
|
|

start [/forum/topic.php?fid=46&gotonew=1&tid=1820328]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
10ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
2ms |
| others: | 213ms |
| total: | 350ms |

| 0 / 0 |
