|
|
|
Оптимизация тяжелого запроса
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! В таблице БД около 10 млн. записей, два индекса. В скрипте перебирается вся таблица, $st постоянно увеличивается на 30000 Запрос SELECT * FROM table1 JOIN (SELECT id FROM table1 ORDER BY id LIMIT $st, 30000) as b ON b.id = table1.id; очень долго выполняется. Посоветуйте, пожалуйста, что можно сделать для его оптимизации? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2017, 15:00 |
|
||
|
Оптимизация тяжелого запроса
|
|||
|---|---|---|---|
|
#18+
Portreter, прочитать как именно выполняется offset. Ужаснуться. Не использовать offset. Запоминайте последний встреченный id и запрашивайте следующий кусок от where id > ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2017, 16:01 |
|
||
|
|

start [/forum/topic.php?fid=47&gotonew=1&tid=1830355]: |
0ms |
get settings: |
10ms |
get forum list: |
27ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
184ms |
get topic data: |
10ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
| others: | 238ms |
| total: | 552ms |

| 0 / 0 |
