|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Всем привет, очень долго работает запрос, если убрать "and c.clientid = 344247" подскажите какие варианты есть чтобы увеличить скорость выполнения запроса? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.04.2019, 16:55 |
|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
Извините не ту картинку приложил ... |
|||
:
Нравится:
Не нравится:
|
|||
29.04.2019, 16:56 |
|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
elimpionподскажите какие варианты есть чтобы увеличить скорость выполнения запроса? Обычные. - изучить модель данных, объемы - изучить логику запроса - разобрать детально план(ы) исполнения - определить операции, пожирающие время и ресурсы - на основании собранных данных принять решение о привлечении специалиста ... |
|||
:
Нравится:
Не нравится:
|
|||
29.04.2019, 17:21 |
|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
У вас 3 обращения к таблице CLCOMPATTRS, точно можно обойтись 2-мя и можно in на EXISTS переписать и сравнить планы выполнения ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 07:09 |
|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
elimpion, таблица партиционирована? какие индексы на таблице? В общем случае без фильтра по клиенту этот запрос быстро работать не будет - в EAV столбец "атрибут" неселективен и индексировать его отдельно не имеет смысла. alex-lsУ вас 3 обращения к таблице CLCOMPATTRS, точно можно обойтись 2-мя и можно in на EXISTS переписать и сравнить планы выполнения Можно и за один и это единственный вариант помочь этому запросу не создавая индексов (получить все за один table access full). ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 08:13 |
|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
MazoHistМожно и за один и это единственный вариант помочь этому запросу не создавая индексов (получить все за один table access full). Код: plsql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 08:20 |
|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
Ошибся. вместо OR надо указать AND Код: plsql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 08:23 |
|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
MazoHistMazoHistМожно и за один и это единственный вариант помочь этому запросу не создавая индексов (получить все за один table access full). Код: plsql 1. 2. 3. 4. 5. 6.
строго говоря, запрос не эквивалентен изначальному, так как в нем требуется соблюдение одновременно двух условий, а у вас будет достаточно одного. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 08:25 |
|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
MazoHistОшибся. вместо OR надо указать AND Код: plsql 1. 2. 3. 4. 5. 6.
а этот вообще с кривыми алиасами. а если их поправить, он ничего не вернёт ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 08:26 |
|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
Посетительа этот вообще с кривыми алиасами. а если их поправить, он ничего не вернёт Согласен, алиасы скопировал и немного затупил. Код: plsql 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 08:53 |
|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 09:04 |
|
Оптимизация запроса
|
|||
---|---|---|---|
#18+
MazoHistМожно и за один и это единственный вариант помочь этому запросу не создавая индексов наверное, я сильно в условия не смотрел, но на мой взгляд автор запроса должен сам хоть чуток думать, а вы как обычно разжевываете и срыгиваете ему в рот готовое решение... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2019, 10:44 |
|
|
start [/forum/topic.php?fid=52&msg=39808137&tid=1882541]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
227ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 298ms |
total: | 616ms |
0 / 0 |