Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Какой из составных индексов эффективнее ?  [new]
Вот_возник_вопрос
Guest
Есть таблица table1:
town,
clientid
....
...
Общее количество записей в таблице ~ 4 млн.
Уникальных Значений town (городов) ~ 50
Уникальных Значений clientid соответсвенно ~ 80000
clientid может повоторяться для разных town, а в пределах одного нет
(т.е. комбинация town, clientid пораждает уникальную запись в таблице)

хочу создать составной индекс из этих двух полей !
Какой из них будет эффективнее
town, clientid
или
clientid, town

1. для ждойна с другой таблицей по этим полям
2. для поиска одного уникального сочетания ???
11 авг 09, 18:19    [7524620]     Ответить | Цитировать Сообщить модератору
 Re: Какой из составных индексов эффективнее ?  [new]
Вот_возник_вопрос
Guest
Или где почитать про составные индексы ?!
11 авг 09, 18:25    [7524636]     Ответить | Цитировать Сообщить модератору
 Re: Какой из составных индексов эффективнее ?  [new]
iljy
Member

Откуда:
Сообщений: 8711
Вот_возник_вопрос,

эффективность индекса имеет смысл оценивать только применительно к запросам. Абстрактно это бессмысленно. Можно попробовать оценить кластерный индекс с точки зрения накопления фрагментации.
11 авг 09, 18:25    [7524644]     Ответить | Цитировать Сообщить модератору
 Re: Какой из составных индексов эффективнее ?  [new]
Вот_возник_вопрос
Guest
2 iljy
ну вот я и пишу

1. для ждойна с другой таблицей по этим полям
2. для поиска одного уникального сочетания ???
11 авг 09, 18:27    [7524650]     Ответить | Цитировать Сообщить модератору
 Re: Какой из составных индексов эффективнее ?  [new]
Ennor Tiegael
Member

Откуда:
Сообщений: 3205
Если в совсем общем случае типа "сферический индекс в вакууме", то поля имеет смысл перечислять в порядке убывания селективности, т.е. в вашем случае ClientId, Town. В то же время, если у вас есть запросы с условиями отбора по неравенству, это может не подойти.
11 авг 09, 18:31    [7524671]     Ответить | Цитировать Сообщить модератору
 Re: Какой из составных индексов эффективнее ?  [new]
iljy
Member

Откуда:
Сообщений: 8711
Вот_возник_вопрос
2 iljy
ну вот я и пишу

1. для ждойна с другой таблицей по этим полям
2. для поиска одного уникального сочетания ???


хорошо, в таком случае скорее всего без разницы. Есть небольшой шанс, что эффективней будет индекс clientid, town, но врядли. Но если вы попробуете наложить фильтры, группировку, сортировку и прочие более вещи - можете удивится.
11 авг 09, 18:32    [7524675]     Ответить | Цитировать Сообщить модератору
 Re: Какой из составных индексов эффективнее ?  [new]
Вот_возник_вопрос
Guest
Я понял .... спасибо всем за ответы !!!
11 авг 09, 18:46    [7524730]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить