Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.13;
Скачать: CL | DM;

Вниз

Предложения по оптимизации ?   Найти похожие ветки 

 
Dimedrol   (2004-05-21 18:13) [0]

Коллеги, хочу совета.
У меня есть табличка, там ок. 1.100.000 записей.
Мне нужно на форме в DBLookupComboBoxEh
вытащить оттуда выборку некоторых названий.

Запрос -
select f1,f2,f3 from MY_TABLE where f2=2

У поля f2 - малая "перечисляемость", поэтому индекс по нему не построен.

Для возможного ускорения построен индекс сразу по 3 вынимаемым полям, что ничуть не улучшило производительность.

В результате запроса вынимается всего 77 результатов,
но скорость работы - весьма невысока. :-(
IBExpert показывает в Performance Analysis - 1 126 670.
Это довольно долго.
При показе формы приходится ждать.

В качестве DBAccess компонент использую FibPlus.

Пожно ли как-то ускорить работу этого участка программы ?

(DB - Firebird 1.5)


 
Vlad ©   (2004-05-21 18:23) [1]


> Запрос -
> select f1,f2,f3 from MY_TABLE where f2=2
>
> У поля f2 - малая "перечисляемость", поэтому индекс по нему
> не построен.

Ну если по f2 нет индекса, так чего же ты хочешь ?
Тут нужен индекс именно по этому полю, без всяких других полей


 
Dimedrol   (2004-05-21 18:38) [2]

Ага... Действительно!
Помогло! 8-)
Спасибо!


 
dimm22   (2004-05-21 19:09) [3]


> У поля f2 - малая "перечисляемость", поэтому индекс по нему
> не построен.

Не совсем понятно как это может быть малая перечисляемость если записей 1 100 000. А при запросе select f1,f2,f3 from MY_TABLE where f2=2 получаешь 77 записей. Это в среднем получается 1 100 000/77=14286 вариантов. Хотя если f2 заполняется  значениями неравномерно, то дело другое.



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

Текущий архив: 2004.06.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.036 c
1-1085734256
evgen
2004-05-28 12:50
2004.06.13
Как запретить редактировать все столбцы DBgrid кроме одного?


3-1085148826
Dimedrol
2004-05-21 18:13
2004.06.13
Предложения по оптимизации ?


3-1084968507
Ord
2004-05-19 16:08
2004.06.13
mysql.dll


14-1085740950
syte_ser78
2004-05-28 14:42
2004.06.13
Плагиат?


3-1084941476
hyper_omsk
2004-05-19 08:37
2004.06.13
Поиск приближенной даты SQL