проблема вот с этим запросос:
Код:
SELECT MAX(CREATEDAT)
FROM SMDOCUMENTS D,SMSPEC S
WHERE S.DOCTYPE = S.DOCTYPE AND S.DOCID = D.ID AND D.DOCTYPE = 'WI' AND D.DOCSTATE = 3 AND D.OPCODE = 0 AND D.CREATEDAT <= :b1 AND D.LOCATIONTO = :b2 AND S.ARTICLE = :b3
(надо полагать это поиск последнего прихода для сравнения цены) на одном артикуле висит полжизни
однако если выполнить
Код:
declare
dummy date;
begin
for i in (select article from smspec s where s.doctype='WI' and docid='ПН057550')
loop
SELECT MAX(CREATEDAT) into dummy
FROM SMDOCUMENTS D,SMSPEC S
WHERE S.DOCTYPE = S.DOCTYPE
AND S.DOCID = D.ID
AND D.DOCTYPE = 'WI'
AND D.DOCSTATE = 3
AND D.OPCODE = 0
AND D.CREATEDAT <= '16.01.2007'
AND D.LOCATIONTO = 39
AND S.ARTICLE = i.article;
end loop;
end;
указав номер и дату накладной то выполняется за несколько десятков секунд
уже не знаю куда рыть
и как все таки собрать статистику?
resmgr: waiting in check2 - исчезло после удаления RESORCE_PLAN