Леонид Агафонов wrote:
При переходе с Yaffil на ФБ заметили "странное" поведение запросов

А почему тогда план от яффила не показываешь? Что мы с чем сравниваем?

CREATE DESCENDING INDEX INV_MOVEMENT_IDX1 ON INV_MOVEMENT
(MOVEMENTDATE);
CREATE DESCENDING INDEX INV_MOVEMENT_IDX2 ON INV_MOVEMENT (GOODKEY,
CONTACTKEY, MOVEMENTDATE);

CREATE PROCEDURE USR$INV_GETREMAINS (goodkey integer, contactkey
integer, movementdate date) returns (mdate date)
as
begin
   for
     select first(1) m.movementdate from
        inv_movement m
     where
         m.goodkey = :goodkey
        and m.contactkey = :contactkey
        and m.movementdate <= :movementdate
     order by
        m.movementdate desc
     into :mdate
   do
   begin
      suspend;
    end
end

Если я не ошибаюсь, то для запроса в процедуре яффил должен был выбрать план:

M ORDER INV_MOVEMENT_IDX2

Если так оно и есть, то причина мне понятна.


--
Дмитрий Еманов

Ответить