Я знаю важность индексов и то, как порядок объединений может изменять производительность. Я сделал кучу чтения, связанного с индексами с несколькими столбцами, и не нашел ответа на мой вопрос.
Мне любопытно, если я делаю индекс с несколькими столбцами, если порядок, в котором они указаны, имеет значение вообще. Я предполагаю, что это не так, и что двигатель будет относиться к ним как к группе, где упорядочение не имеет значения. Но я хочу подтвердить.
Например, с сайта mysql (http://dev.mysql.com/doc/refman/5.0/en/multiple-column-indexes.html)
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)
);
Будет ли какое-либо пособие в любых случаях, когда следующее будет лучше или эквивалентно?
CREATE TABLE test (
id INT NOT NULL,
last_name CHAR(30) NOT NULL,
first_name CHAR(30) NOT NULL,
PRIMARY KEY (id),
INDEX name (first_name,last_name)
);
Specificially:
INDEX name (last_name,first_name)
против
INDEX name (first_name,last_name)