Форум: "Базы";
Текущий архив: 2012.04.22;
Скачать: [xml.tar.bz2];
ВнизПлан запроса vs. время выполнения Найти похожие ветки
← →
RWolf © (2010-05-21 12:11) [0]создаём и заполняем такую таблицу:
CREATE TABLE MYTABLE (
ROWID INTEGER NOT NULL,
DT TIMESTAMP,
DATA VARCHAR(100),
CONSTRAINT PK_MYTABLE PRIMARY KEY (ROWID)
);
CREATE INDEX IDX_DT ON MYTABLE (DT);
и делаем такой запросSELECT * FROM MYTABLE
WHERE DT BETWEEN "1.1.2009" AND "1.6.2009"
ORDER BY ROWID
Если индекс IDX_DT включен, IB Expert показывает, что план запроса выглядит так:
PLAN (D ORDER PK_MYTABLE),
и что было выполнено 3 тыс. чтений (indexed reads) из таблицы.
Если индекс выключить, IB Expert рапортует уже о 800 тыс. чтений (соответственно, время выполнения подросло до 4 сек), но план запроса выглядит точно так же.
По идее, планы должны различаться (а значит, FB возвращает неправильный план выполнения), или я неправ?
← →
turbouser © (2010-05-21 12:22) [1]
>
> RWolf © (21.05.10 12:11)
Попробуй обновить статистику для индекса
← →
turbouser © (2010-05-21 12:23) [2]Вообще, у FB (1.5 - точно) были замечены странности с планами.
← →
RWolf © (2010-05-21 15:13) [3][2]
Да, FB 2.1 показывает другой план:
PLAN (D ORDER PK_MYTABLE INDEX (IDX_DT))
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2012.04.22;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.065 c