|
Помогите ускорить запрос или таблицу
|
|||
---|---|---|---|
#18+
существует проблема с выполнением запроса во время выполнения процедуры (запрос выполняется порядка 7 мин - долго), вот запрос и данные по таблице: Select ssno, approvedby, uaiting, custno, accno, persono, perso2no, f31, f91, g1, reason From newgames Where batchno = fxmlbatchno Or (reason is not null and reason matches ('*/*:*') and reason not matches ('-746/*:*') ) batchno integer reason varchar(250) fxmlbatchno значение берется из процедуры таблица newgames имеет около 300 полей и 500 000 записей, индексов нет на поля batchno и reason ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2013, 18:50 |
|
Помогите ускорить запрос или таблицу
|
|||
---|---|---|---|
#18+
faidсуществует проблема с выполнением запроса во время выполнения процедуры (запрос выполняется порядка 7 мин - долго), вот запрос и данные по таблице: Select ssno, approvedby, uaiting, custno, accno, persono, perso2no, f31, f91, g1, reason From newgames Where batchno = fxmlbatchno Or (reason is not null and reason matches ('*/*:*') and reason not matches ('-746/*:*') ) batchno integer reason varchar(250) fxmlbatchno значение берется из процедуры таблица newgames имеет около 300 полей и 500 000 записей, индексов нет на поля batchno и reason Создать индексы: Код: plsql 1. 2.
Переписать запрос примерно так: Код: plsql 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2013, 09:32 |
|
Помогите ускорить запрос или таблицу
|
|||
---|---|---|---|
#18+
victor16, А я бы не стал строить индекс по полю varchar(250). Тем более, когда используется matches ('*/*:*'). ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2013, 12:44 |
|
|
start [/forum/topic.php?fid=44&msg=38314216&tid=1607042]: |
0ms |
get settings: |
17ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
52ms |
get topic data: |
2ms |
get forum data: |
0ms |
get page messages: |
103ms |
get tp. blocked users: |
0ms |
others: | 292ms |
total: | 473ms |
0 / 0 |