|
2 условия во WHERE - если вместе, то тормозят, а по отдельности - нет
|
|||
---|---|---|---|
#18+
Вот 2 запроса: Код: sql 1. 2. 3.
по отдельности выдают так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
А вместе вот так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
отсеивается 1.2 миллиона строк, растут ms... Потому что он не может найти 500 строк и бежит по всей таблице... Я пробовал в начало WHERE подсунуть: Код: sql 1.
но эффекта 0 (а вот это странно) что ещё можно сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2021, 22:46 |
|
2 условия во WHERE - если вместе, то тормозят, а по отдельности - нет
|
|||
---|---|---|---|
#18+
tip78, проще всего добавить индекс on (expire) where closed IS NULL; -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2021, 22:58 |
|
2 условия во WHERE - если вместе, то тормозят, а по отдельности - нет
|
|||
---|---|---|---|
#18+
а чё так можно было? не, быстрее не стало... индекс на expire и closed уже есть, ничего не изменилось ( что примечательно, он и БЕЗ индекса на expire также работает... а почему сужение added то не работает? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2021, 01:34 |
|
2 условия во WHERE - если вместе, то тормозят, а по отдельности - нет
|
|||
---|---|---|---|
#18+
tip78 а чё так можно было? не, быстрее не стало... индекс на expire и closed уже есть, ничего не изменилось ( что примечательно, он и БЕЗ индекса на expire также работает... а почему сужение added то не работает? рекомендую прикладывать созданный индекс (полную команду создания) и explain результаты и еще покажите explain analyze select from ваша таблица WHERE t1.closed IS NULL AND t1.expire < (now() - '12 hours'::interval) ; без лимита ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2021, 01:39 |
|
2 условия во WHERE - если вместе, то тормозят, а по отдельности - нет
|
|||
---|---|---|---|
#18+
сработало! надо было не added, а expire и индекс такой: Код: sql 1.
а с обычным индексом на expire НЕ работает... спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2021, 02:16 |
|
|
start [/forum/topic.php?fid=53&fpage=16&tid=1994232]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 180ms |
0 / 0 |