[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: индексы
Гость_Alex
Привет. Такой вопрос. Только разбираюсь с индексами. В таблице (mysql) есть 3 поля
- module
- type
- tid

много селект-запросов, с этими полями в условии
Как написать максимально правильно индекс, если в условии могут быть след. сочитания:
module
module+type
module+type+tid

INDEX (module, type, tid) оптимален в таком случаи?
Как такой индекс обработает условие module+type или module ?

Или правильнее отдельно написать?
INDEX (module, type, tid)
INDEX (module, type)
INDEX (module)



Спустя 5 часов, 36 секунд (30.04.2012 - 17:33) vagrand написал(а):
INDEX (module, type, tid) будет достаточно. Если конечно нету еще и сортировки по каким-то полям

Спустя 2 часа, 1 минута, 1 секунда (30.04.2012 - 19:34) vital написал(а):
Цитата (vagrand @ 30.04.2012 - 17:33)
INDEX (module, type, tid) будет достаточно. Если конечно нету еще и сортировки по каким-то полям

Неа. ЕМНИП
КОгда запрос только на одно поле - составной индекс не работает.

Спустя 13 часов, 12 минут, 30 секунд (1.05.2012 - 08:47) Placido написал(а):
Цитата (vital @ 30.04.2012 - 20:34)
Цитата (vagrand @ 30.04.2012 - 17:33)
INDEX (module, type, tid) будет достаточно. Если конечно нету еще и сортировки по каким-то полям

Неа. ЕМНИП
КОгда запрос только на одно поле - составной индекс не работает.

Если это поле в индексе первое, то будет.
И vagrand прав, для выборки по указанным комбинациям полей достаточно одного составного индекса (module, type, tid).

Спустя 7 часов, 38 минут, 56 секунд (1.05.2012 - 16:26) Гость_Alex написал(а):
Спасибо ребят.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.