Феликс
Guest
Многостолбцовые индексы/индексация
Продолжая "гнуть свою гнусную линию" =))
Вот прочел документацию по MySQL на офф сайте. http://dev.mysql.com/doc/refman/4.0/ru/multiple-column-indexes.html
mysql> CREATE TABLE test (
-> id INT NOT NULL,
-> last_name CHAR(30) NOT NULL,
-> first_name CHAR(30) NOT NULL,
-> PRIMARY KEY (id),
-> INDEX name (last_name,first_name));
Всю жизнь я свято верил в то индексом в таблице является то что стоит в скобках после PRIMARY KEY (<вот_тут>). А что тогда такое INDEX name (last_name,first_name))?
Короче, зачем я туда вообще полез, зачем мне это надо: есть табличка (id, owner, ...). Как уже говорилось я делаю РПГ'шку. В табличке у нас будет хранится инфа о вещи и кто является ее владельцем. Как ПК (примари ки) сделать поле owner, насколько я знаю, нельзя. Поэтому и существует поле id. Но выбирать строки из таблицы я буду именно по id владельца, то есть по полю owner. Следовательно нужно как-то проиндексировать 2 столбца. Еще короче, цель - ускорение поиска.
Теперь главный вопрос: правильно ли я размышляю и как енто реализовать?
P.S Сорри за кучу вопросов, просто я не только хочу решить проблему, но и полностью разобраться в способе ее решения.
Продолжая "гнуть свою гнусную линию" =))
Вот прочел документацию по MySQL на офф сайте. http://dev.mysql.com/doc/refman/4.0/ru/multiple-column-indexes.html
mysql> CREATE TABLE test (
-> id INT NOT NULL,
-> last_name CHAR(30) NOT NULL,
-> first_name CHAR(30) NOT NULL,
-> PRIMARY KEY (id),
-> INDEX name (last_name,first_name));
Всю жизнь я свято верил в то индексом в таблице является то что стоит в скобках после PRIMARY KEY (<вот_тут>). А что тогда такое INDEX name (last_name,first_name))?
Короче, зачем я туда вообще полез, зачем мне это надо: есть табличка (id, owner, ...). Как уже говорилось я делаю РПГ'шку. В табличке у нас будет хранится инфа о вещи и кто является ее владельцем. Как ПК (примари ки) сделать поле owner, насколько я знаю, нельзя. Поэтому и существует поле id. Но выбирать строки из таблицы я буду именно по id владельца, то есть по полю owner. Следовательно нужно как-то проиндексировать 2 столбца. Еще короче, цель - ускорение поиска.
Теперь главный вопрос: правильно ли я размышляю и как енто реализовать?
P.S Сорри за кучу вопросов, просто я не только хочу решить проблему, но и полностью разобраться в способе ее решения.