Как создать индекс для разных таблиц - PullRequest
0 голосов
/ 21 сентября 2010
    Table A consists of (id, fieldA, fieldB, fieldC, fieldD)
    Table B consists of (id, tableA-id, fieldE, fieldF, fieldG)

My queries looks like this:-

1. select * from tableB b, tableA a where a.fieldA=? and a.fieldB=? and a.fieldC=? and a.fieldD=? and (b.fieldF >= '09/01/10' and b.fieldF <= '09/30/10');

2. select * from tableB b, tableA a where a.fieldA=? and a.fieldB=? and a.fieldC=? and a.fieldD=? and b.fieldE=? and (b.fieldF >= '09/01/10' and b.fieldF <= '09/30/10');

Примечание: fieldE - это дополнительный параметр для [2]

Как мне определить свои индексы для размещения этих запросов

1 Ответ

0 голосов
/ 21 сентября 2010

Хорошее начало, я думаю, будет:

create index huge_index on tableA (fieldA, fieldB, fieldC, fieldD)
create index modest_index on tableB (fieldF, fieldE);

Вероятно, также B.tableA-id.Гуру может подсказать, может ли помочь какой-то индекс на В, включая tableA-id и другие значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...