Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Индексы в базе данных [D7, IB6.x]


GekaNaz ©   (2005-06-16 08:35:00) 

Подскажите пожалуйста, где можно почитать грамотно написанную статью про индексы, простые создавать умею, а как сделать индекс на основе часто используемого запроса, незнаю
есть две таблицы:
CREATE TABLE CAT_PARAM (
   ID     INTEGER NOT NULL,  primary key
   NAME   VARCHAR(255),);
CREATE TABLE CAT_PARSE (
   ID    INTEGER NOT NULL,primary key
   TYP   INTEGER,
   NAME  VARCHAR(255),
   IDP   INTEGER);
и запрос очень медленно выполняется:
select distinct a.id,a.name
from cat_param a,cat_parse b
where a.id=b.idp and typ=:typ;
какой индекс надо создать, чтобы работало быстро ?


size=20   (2005-06-16 09:50:00) [1]

http://ibase.ru/develop.htm#performance


Sergey13   (2005-06-16 09:30:00) [2]

2GekaNaz ©  
Не дурно бы наверное форинкей натянуть на IDP, в ИБ при этом индекс автоматом создается.


dolmat   (2005-06-16 09:24:00) [3]

Создавай индекс по полям выборки. Рас у тебя
where a.id=b. idpand b. typ=:typ; так по ним и создай


Anatoly Podgoretsky   (2005-06-16 09:16:00) [4]

b.idp и b.typ


Наверх

Титульная страница Поиск, карта сайта Написать письмо