Konstantin R. Beliaev wrote:
Есть таблица
CREATE TABLE CLIENT_FIX (
NUM INTEGER NOT NULL,
DATE_ DATE NOT NULL
/*дальше не важно*/
);
CREATE DESCENDING INDEX SF_CLIENT ON CLIENT_FIX (DATE_, NUM);
в таблице 12 000 000 записей.
А индекса по NUM нет часом?
Теперь добавим условие:
select first 1 * from client_fix where num>0 order by date_ desc
Plan
PLAN (CLIENT_FIX ORDER SF_CLIENT) - план тот же
На самом деле, план другой. И 2.0 это показывает корректно.
Я об этом писал в статье по методам доступа.
FB 1.5.3 CS
Выбрось каку :-)
ПОЧЕМУ при добавлении условия, которому уже удовлетворяет первая
попавшаяся запись, сервер продолжает считывать таблицу с диска?
Он индекс читает, а не таблицу.
--
Дмитрий Еманов