/ / Indeksy MySQL z wieloma polami - mysql, sql, optymalizacja

Indeksy MySQL z wieloma polami - mysql, sql, optimisation

Czy poniższa tabela będzie uważana za posiadanązduplikowane indeksy w TypeId, czy jest to całkowicie w porządku zrobić to w ten sposób? Niektóre z moich zapytań działają szybciej przy użyciu KEY „objęte”, podczas gdy inne działają lepiej tylko za pomocą „TypeId”. Każda wiedza na ten temat byłaby doceniana.

CREATE TABLE module(
Id INT unsigned not null auto_increment,
name VARCHAR(30) not null,
TypeId INT unsigned not null,
cSign tinyint not null,
orderId int not null,
PRIMARY KEY(Id),
KEY "covered" ("cSign","TypeId","orderId"),
KEY "TypeId" ("TypeId")
);

Odpowiedzi:

1 dla odpowiedzi № 1

Nie, indeksy są różne.

Dokumentacja MySQL wykonuje dobrą robotę wyjaśniając indeksy za pomocą klawiszy kompozytowych. Ważne jest to, że skrajne lewe kolumny indeksów są różne.

Uwaga: powinieneś naprawić swój kod, usuwając pojedyncze cudzysłowy. Są w tym kontekście nieprawidłowe.