共計 1183 個字符,預計需要花費 3 分鐘才能閱讀完成。
本篇內(nèi)容主要講解“mysql 有沒有聯(lián)合索引”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓丸趣 TV 小編來帶大家學習“mysql 有沒有聯(lián)合索引”吧!
mysql 中有聯(lián)合索引;聯(lián)合索引指的是對表上的兩個或者兩個以上的列字段進行索引,也被稱為復合索引,如果僅對聯(lián)合索引后面的任意列執(zhí)行搜索時,該索引是不會有任何作用,創(chuàng)建該索引的語法為“create index 索引名 on 表名 (字段名 1, 字段名 2,…)”。
本教程操作環(huán)境:windows10 系統(tǒng)、mysql8.0.22 版本、Dell G3 電腦。
mysql 有聯(lián)合索引嗎
mysql 有聯(lián)合索引
聯(lián)合索引:也叫復合索引,指對表上的兩個或兩個以上的列字段進行索引。
Mysql 從左到右使用索引中的字段,一個查詢可以只使用索引中的一部分,但只能是最左側(cè)部分。例如索引是 key index (a,b,c),可以支持 a | a,b| a,b,c 3 種組合進行查找,但不支持 b,c 組合查找
提示:僅僅對聯(lián)合索引后面的任意列執(zhí)行搜索時,該索引是不會有任何作用
-- 用戶表
CREATE TABLE `user` ( `id` int(4) NOT NULL COMMENT 主鍵 ID ,
`name` varchar(4) NOT NULL COMMENT 姓名 ,
`age` int(3) NOT NULL COMMENT 年齡 ,
PRIMARY KEY (`id`)
)
1. 創(chuàng)建索引
如上圖所示,我們創(chuàng)建好了用戶表,如果我們想在該表的 name 和 age 列字段上創(chuàng)建聯(lián)合索引,可采用下述 SQL:
create index index_name_age on user (name,age);
創(chuàng)建聯(lián)合索引的語法:create index 索引名 on 表名 (字段名 1, 字段名 2,…)
2. 刪除索引
如果我們覺得所創(chuàng)建的聯(lián)合索引不適宜,可采用下述 SQL 刪除聯(lián)合索引:
drop index index_name_age on user;
或者采用:alter table 表名 drop index 索引名
alter table user drop index index_name_age;
3. 存在同名索引時會報錯
假設(shè)已經(jīng)創(chuàng)建了組合索引(index_name_age),如果再次創(chuàng)建該索引就會報下述錯誤:
Query : create index index_name_age on user (name,age)
Error Code : 1061
Duplicate key name index_name_age
4. 查看索引
查看索引的語法:show index from 表名
SHOW INDEX FROM USER;
到此,相信大家對“mysql 有沒有聯(lián)合索引”有了更深的了解,不妨來實際操作一番吧!這里是丸趣 TV 網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!