![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите, пожалуйста, укорить работу. [D3, IB5.x]
Oleon © (2002-06-24 11:39:00)Есть у меня процедура.
for select ID, SERIAL, NUMBER, OPERDATE
from blankprihodlist bp
where OPERDATE <= :ADate
and (RashodDate > :ADate or RAshodDate is NULL)
and OPERDATE = (select max(OPERDATE)
from blankprihodlist
where serial = bp.SERIAL
and NUMBER = bp.NUMBER)
order by Serial, Number
into :ID_,:Serial, :Number, :THEDATE do
Begin
suspend;
End
Какие мне индексы нужно создать, чтобы быстрее работало? А то у меня 50000 записей и результата я дождаться не могу.
Desdechado (2002-06-25 10:59:00) [1]и при использовании подзапроса скорость заметно падает. подумай, может, как-то можно заменить его на объединение таблиц.
AlexGreg (2002-06-24 12:29:00) [2]Привет Oleon.
Индексы создавай для полей, на которые накладывается условия WHERE.
Причём, если поля из одной таблицы и в WHERE встречаются через AND, то один индекс на оба поля. Если через OR, то лучше по инднксу на каждое поле
Удачи :0)