Сенсей
Новичок
Индексы ... понял зачем .... понял как ... но не понял что лучше ...
Вроде и читал про них факи ..... и исследовал различные скрипты ... есть пару очень важных вопросов ...
Вот есть например 2 таблицы ...... я в них по разному организовал индексы .... но вот какой из способов правильный ... я не знаю ...
Поля news_topic_id и news_enabled ВСЕГДА в условии WHERE
Поля news_show_in_home и news_id - НЕ ВСЕГДА используются в условиях ... а уже в зависимости от требуемых дейсвий ....
Какая реализвация здесь правильней.... или может можно еще как то улучшить ?
Первый вариант -
Второй вариант -
Плюс ко всему интересует - название индекса на что то влияет ? Или же здесь главное какое поле входит в этот индекс ?
Вроде и читал про них факи ..... и исследовал различные скрипты ... есть пару очень важных вопросов ...
Вот есть например 2 таблицы ...... я в них по разному организовал индексы .... но вот какой из способов правильный ... я не знаю ...
Поля news_topic_id и news_enabled ВСЕГДА в условии WHERE
Поля news_show_in_home и news_id - НЕ ВСЕГДА используются в условиях ... а уже в зависимости от требуемых дейсвий ....
Какая реализвация здесь правильней.... или может можно еще как то улучшить ?
Первый вариант -
Код:
CREATE TABLE test (
news_id int(11) unsigned NOT NULL auto_increment,
news_title varchar(255) NOT NULL default '',
news_start_text text,
news_topic_id int(3) unsigned NOT NULL default '1',
news_enabled tinyint(1) unsigned NOT NULL default '1',
news_show_in_home tinyint(1) unsigned NOT NULL default '1',
PRIMARY KEY (news_id),
KEY news_enabled (news_enabled),
KEY news_show_in_home (news_show_in_home),
KEY news_topic_id (news_topic_id)
) TYPE=MyISAM
Код:
CREATE TABLE test (
news_id int(11) unsigned NOT NULL auto_increment,
news_title varchar(255) NOT NULL default '',
news_start_text text,
news_topic_id int(3) unsigned NOT NULL default '1',
news_enabled tinyint(1) unsigned NOT NULL default '1',
news_show_in_home tinyint(1) unsigned NOT NULL default '1',
PRIMARY KEY (news_id),
KEY name (news_topic_id,news_show_in_home,news_enabled)
) TYPE=MyISAM