0
我是新來的sql,現在正在使用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)
);
我已閱讀,在這裏,last_name
或(last_name,first_name)
可用於查找那裏爲first_name
不能直接用於查找(不是最左邊的索引)。
我也讀過,PRIMARY KEY
和UNIQUE KEY
自動索引。那麼,在我的情況下,id
索引來了嗎?不要將它作爲最左邊的前綴。
select * from test
where id=xxx and last_name==xxxx
這會要求查找還是搜索整個數據庫?
id字段是主鍵中唯一的字段,所以它是該索引中最左邊的字段... – Shadow