Вниз
Скачать: CL | DM;

Помогите, пожалуйста, укорить работу.   Найти похожие ветки 

← →
Oleon   (2002-06-24 11:39) [0]

Есть у меня процедура.

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 записей и результата я дождаться не могу.


← →
AlexGreg ©   (2002-06-24 12:29) [1]

Привет Oleon.

Индексы создавай для полей, на которые накладывается условия WHERE.
Причём, если поля из одной таблицы и в WHERE встречаются через AND, то один индекс на оба поля. Если через OR, то лучше по инднксу на каждое поле

Удачи :0)


← →
Desdechado ©   (2002-06-25 10:59) [2]

и при использовании подзапроса скорость заметно падает. подумай, может, как-то можно заменить его на объединение таблиц.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
1-58171
id_privin
2002-07-05 17:19
2002.07.18
Помогите, торможу...


1-58218
SkyQuake
2002-07-04 20:17
2002.07.18
Потоки и картинки, картинки и потоки...


1-58123
Cola
2002-07-08 22:12
2002.07.18
Как посмотреть все сообщения произвольного человека.


1-58135
nimble
2002-07-06 01:44
2002.07.18
Массивы


3-57998
DFort
2002-06-27 11:14
2002.07.18
Grid




   Наверх