Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
План исполнения sql-запроса в DB2 (as/400)
|
|||
|---|---|---|---|
|
#18+
Я хочу, чтобы запрос выполнялся по определенному плану исполнения. Запрос работает быстро в случае создания явного временого файла, построения по нему индекса Конструкция же with temp as (select...) управляющей не является и даеж если подзапрос упорядочен есть явная проблема в длительность работы запроса. Как управлять планами исполнения в Db2 Для as/400? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 18:11 |
|
||
|
План исполнения sql-запроса в DB2 (as/400)
|
|||
|---|---|---|---|
|
#18+
yaselo, привет! Не заню как для AS/400, но для Windows приходилось пару лет назад трассировать запросы при выполнении которых приложение вешалось. То есть ловишь запрос, сохраняешь его отдельно, потом выполняешь, после чего оцениваешь его вес в абстрактных единицах, смотришь по плану на какой из таблиц вес больше всего, там строишь индексы в зависимости от сканируемого поля (полей), но индексы увеличивают вес БД поэтому увлекаться ими особенно не советую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 21:05 |
|
||
|
План исполнения sql-запроса в DB2 (as/400)
|
|||
|---|---|---|---|
|
#18+
У DB2/400 есть два SQL движка - Classic Query Engine и SQL Query Engine. Вам, похоже, нужно поведение старого CQE. Так как далеко не все конструкции языка ещё поддерживаются в SQE, применение любой из неподдерживаемых функций или конструкций направит парсинг в CQE. Я не знаю вашу версию iSeries DB2, но поиск вам в руки ... Пример: SQE в V5R2 не переваривал LIKE, UNION и даже UPPER(). Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2010, 00:11 |
|
||
|
План исполнения sql-запроса в DB2 (as/400)
|
|||
|---|---|---|---|
|
#18+
Anton DemidovУ DB2/400 есть два SQL движка - Classic Query Engine и SQL Query Engine. Вам, похоже, нужно поведение старого CQE. Так как далеко не все конструкции языка ещё поддерживаются в SQE, применение любой из неподдерживаемых функций или конструкций направит парсинг в CQE. Я не знаю вашу версию iSeries DB2, но поиск вам в руки ... Пример: SQE в V5R2 не переваривал LIKE, UNION и даже UPPER(). Код: plaintext 1. А где можно почитать про CQE и SQE? И как можно понять, что парсинг был передан из 2-го в 1-ый движок? Управлять планом запроса в явном виде (т.е. посредством специфический инструкций языка) никак нельзя, можно лишь подстраивать SQL и индексы. В AS400 есть утилита Visual Explain. Попробуйте через нее прогнать запрос и проанализируйте ее выводы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2010, 18:11 |
|
||
|
План исполнения sql-запроса в DB2 (as/400)
|
|||
|---|---|---|---|
|
#18+
wpnА где можно почитать про CQE и SQE? Как обычно: http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/rzajq/queryoptimize.htm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2010, 18:55 |
|
||
|
|

start [/forum/topic.php?fid=43&fpage=71&tid=1602919]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
37ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 11ms |
| total: | 139ms |

| 0 / 0 |
