16-MySQL索引

有些字段的數(shù)據(jù)經常需要修改,增加,刪除,有些字段的數(shù)據(jù)經常需要被查詢,就像不同的人有不同的愛好,我們要投其所好,今天講解的索引就是為了實現(xiàn)差異化對待以上兩種字段,像預處理功能一樣,是一個錦上添花的功能

一.索引-概述

索引是為了快速查找某一字段具有特定值的數(shù)據(jù),如果沒有索引,我們查找某一字段的某個數(shù)據(jù),就需要遍歷,有了索引就像有了字典的目錄,雖然增加了占用的存儲空間,但是查詢速度快了
索引適用于經常需要查找的字段,且數(shù)據(jù)量比較大的情況下,如果某一字段經常要修改,在修改的同時需要動態(tài)修改索引,執(zhí)行效率會慢

1.什么是索引?
索引用于快速找出在某個列中有一特定值的行伟墙,不使用索引屁柏,MySQL必須從第一條記錄開始讀完整個表快毛,直到找出相關的行餐弱,表越大,查詢數(shù)據(jù)所花費的時間就越多姆坚,如果表中查詢的列有一個索引尸昧,MySQL能夠快速到達一個位置去搜索數(shù)據(jù)文件,而不必查看所有數(shù)據(jù)旷偿,那么將會節(jié)省很大一部分時間烹俗。
索引就相當于字典中前幾頁的目錄(拼音/偏旁部首手), 通過目錄我們就能快速的找到想要的結果.
如果沒有索引, 就相當于字典沒有目錄(拼音/偏旁部首手),那么如果想要查找某條數(shù)據(jù)就必須從第一條開始一條一條的查找
2.MySQL中索引的優(yōu)缺點和使用原則
2.1優(yōu)點
+ 所有的MySql字段都可以用作索引
+ 大大加快數(shù)據(jù)的查詢速度
2.2缺點
+ 索引也需要占空間
+ 對表中的數(shù)據(jù)進行增加爆侣、刪除、修改時幢妄,索引也需要動態(tài)的維護兔仰,降低了數(shù)據(jù)的維護速度
2.3原則
+ 對經常用于查詢的字段應該創(chuàng)建索引,
+ 數(shù)據(jù)量小的表最好不要使用索引蕉鸳,索引就可能不會產生優(yōu)化效果乎赴。
By 極客江南

二.索引-分類

一般來說只要設置了主鍵字段,就會自動添加主鍵索引,因為主鍵具有不會被修改不用維護的特性,所以我們一般不會用到索引就是這個原因,因為我們一般可以通過主鍵查詢

3.索引分類
+ 普通索引:  MySQL中基本索引類型,沒有什么限制潮尝,允許在定義索引的列中插入重復值和空值榕吼,純粹為了查詢數(shù)據(jù)更快一點。
+ 唯一索引(唯一鍵): 索引列中的值必須是唯一的勉失,但是允許為空值羹蚣,
+ 主鍵索引:是一種特殊的唯一索引,不允許有空值乱凿。
+ ... ...
By 極客江南

三.索引-使用

image.png

image.png

image.png

image.png

示例一:
create table test1(
id int,
name varchar(20),
index idx_name(name) #創(chuàng)建索引
);
create table test2(
id int,
name varchar(20),
);
create index idx_name on test2(name); #創(chuàng)建索引
create table test3(
id int,
name varchar(20),
);
alter table test3 add index idx_name(name);
示例二:
create table test4(
id int,
name varchar(20),
unique index idx_name(name) #創(chuàng)建索引
);
create table test5(
id int,
name varchar(20),
);
create unique index idx_name on test5(name); #創(chuàng)建索引
create table test6(
id int,
name varchar(20),
);
alter table test6 add unique index idx_name(name);
By 極客江南

四.索引-刪除

image.png

4.刪除索引
drop index idx_name on test6
By 極客江南

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末顽素,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子徒蟆,更是在濱河造成了極大的恐慌胁出,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,110評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件段审,死亡現(xiàn)場離奇詭異全蝶,居然都是意外死亡,警方通過查閱死者的電腦和手機寺枉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評論 3 395
  • 文/潘曉璐 我一進店門抑淫,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人型凳,你說我怎么就攤上這事丈冬≈龊” “怎么了甘畅?”我有些...
    開封第一講書人閱讀 165,474評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長往弓。 經常有香客問我疏唾,道長,這世上最難降的妖魔是什么函似? 我笑而不...
    開封第一講書人閱讀 58,881評論 1 295
  • 正文 為了忘掉前任槐脏,我火速辦了婚禮,結果婚禮上撇寞,老公的妹妹穿的比我還像新娘顿天。我一直安慰自己堂氯,他們只是感情好,可當我...
    茶點故事閱讀 67,902評論 6 392
  • 文/花漫 我一把揭開白布牌废。 她就那樣靜靜地躺著咽白,像睡著了一般。 火紅的嫁衣襯著肌膚如雪鸟缕。 梳的紋絲不亂的頭發(fā)上晶框,一...
    開封第一講書人閱讀 51,698評論 1 305
  • 那天,我揣著相機與錄音懂从,去河邊找鬼授段。 笑死,一個胖子當著我的面吹牛番甩,可吹牛的內容都是我干的侵贵。 我是一名探鬼主播,決...
    沈念sama閱讀 40,418評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼对室,長吁一口氣:“原來是場噩夢啊……” “哼模燥!你這毒婦竟也來了?” 一聲冷哼從身側響起掩宜,我...
    開封第一講書人閱讀 39,332評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蔫骂,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后牺汤,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體辽旋,經...
    沈念sama閱讀 45,796評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡很洋,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,968評論 3 337
  • 正文 我和宋清朗相戀三年峡竣,在試婚紗的時候發(fā)現(xiàn)自己被綠了边败。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片碱璃。...
    茶點故事閱讀 40,110評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡筛璧,死狀恐怖艘刚,靈堂內的尸體忽然破棺而出凝垛,到底是詐尸還是另有隱情策橘,我是刑警寧澤敦间,帶...
    沈念sama閱讀 35,792評論 5 346
  • 正文 年R本政府宣布瓶逃,位于F島的核電站,受9級特大地震影響廓块,放射性物質發(fā)生泄漏厢绝。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,455評論 3 331
  • 文/蒙蒙 一带猴、第九天 我趴在偏房一處隱蔽的房頂上張望昔汉。 院中可真熱鬧,春花似錦拴清、人聲如沸靶病。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽娄周。三九已至渴语,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間昆咽,已是汗流浹背驾凶。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留掷酗,地道東北人调违。 一個月前我還...
    沈念sama閱讀 48,348評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像泻轰,于是被迫代替她去往敵國和親技肩。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,047評論 2 355

推薦閱讀更多精彩內容

  • MYSQL 基礎知識 1 MySQL數(shù)據(jù)庫概要 2 簡單MySQL環(huán)境 3 數(shù)據(jù)的存儲和獲取 4 MySQL基本操...
    Kingtester閱讀 7,817評論 5 116
  • 之前的文章一直在規(guī)避索引的建立去優(yōu)化數(shù)據(jù)庫,不是不想講泳挥,而是這個太重要然痊,必須抽出來講。今天我們就來研究下數(shù)據(jù)庫索引...
    sherlock_6981閱讀 3,003評論 0 23
  • 一屉符、MySQL優(yōu)化 MySQL優(yōu)化從哪些方面入手: (1)存儲層(數(shù)據(jù)) 構建良好的數(shù)據(jù)結構剧浸。可以大大的提升我們S...
    寵辱不驚丶歲月靜好閱讀 2,438評論 1 8
  • 索引是用來快速檢索出具有特定值的記錄矗钟。如果沒有索引唆香,數(shù)據(jù)庫就必須從第一條記錄開始進行全表掃描,直到找出相關的行吨艇。數(shù)...
    咕泡學院蓉蓉老師閱讀 464評論 0 2
  • ORA-00001: 違反唯一約束條件 (.) 錯誤說明:當在唯一索引所對應的列上鍵入重復值時躬它,會觸發(fā)此異常。 O...
    我想起個好名字閱讀 5,320評論 0 9