Сенсей
Новичок
Индексы ..... секс еще тот ...
ДЛя начала .. есть запрос :
SELECT mod_title, mod_custom_title FROM mods USE INDEX(mod_active, mod_in_block) WHERE mod_active='1' AND mod_in_block='1' ORDER BY mod_custom_title ASC
Дамп таблицы :
Делаю EXPLAIN:
type:ALL
possible keys:mod_active, mod_in_block
key:NULL
key len:NULL
ref:NULL
rows:11
Если добавляю в запрос USE INDEX(mod_active, mod_in_block)
результат не меняется ...
Но вот интересная вещь ... если я добавлю к запросу
limit 1
То теперь после explain:
type:range
possible keys:mod_active, mod_in_block
key:mod_active
.....
Но - мне в запросе этот LIMIT нафиг не нужен ..... мне нужно выбрать все записи ...
Читал мануал .. пробовал создать индекс типа aaa(mod_active, mod_in_block, mod_custom_title) - рузультат тот же ....
В чем трабла?
ДЛя начала .. есть запрос :
SELECT mod_title, mod_custom_title FROM mods USE INDEX(mod_active, mod_in_block) WHERE mod_active='1' AND mod_in_block='1' ORDER BY mod_custom_title ASC
Дамп таблицы :
PHP:
CREATE TABLE mods (
mod_id int(11) unsigned NOT NULL auto_increment,
mod_title varchar(255) NOT NULL default '',
mod_custom_title varchar(255) NOT NULL default '',
mod_active tinyint(1) unsigned NOT NULL default '1',
mod_in_block tinyint(1) unsigned NOT NULL default '1',
PRIMARY KEY (mod_id),
KEY mod_active (mod_active),
KEY mod_in_block (mod_in_block)
) TYPE=MyISAM;
type:ALL
possible keys:mod_active, mod_in_block
key:NULL
key len:NULL
ref:NULL
rows:11
Если добавляю в запрос USE INDEX(mod_active, mod_in_block)
результат не меняется ...
Но вот интересная вещь ... если я добавлю к запросу
limit 1
То теперь после explain:
type:range
possible keys:mod_active, mod_in_block
key:mod_active
.....
Но - мне в запросе этот LIMIT нафиг не нужен ..... мне нужно выбрать все записи ...
Читал мануал .. пробовал создать индекс типа aaa(mod_active, mod_in_block, mod_custom_title) - рузультат тот же ....
В чем трабла?