好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > MySQL索引的基本語法

MySQL索引的基本語法

熱門標簽:臨沂做地圖標注 申請400電話電話價格 新鄉(xiāng)智能外呼系統(tǒng)好處 石家莊400電話辦理公司 宜賓全自動外呼系統(tǒng)廠家 地圖標注客戶付款 許昌外呼增值業(yè)務線路 咸陽防封電銷卡 廣東400企業(yè)電話申請流程

     索引是排好序的數(shù)據(jù)結(jié)構(gòu)!可以用在 where 條件查找的字段,和order by 排序的字段,有了索引,便可以快速地定位數(shù)據(jù)所在的物理地址并找出來。

索引的分類

1.普通索引(normal):沒有任何約束,主要用于提高查詢效率

2.唯一索引(UNIQUE):在普通索引的基礎(chǔ)上增加了數(shù)據(jù)唯一性的約束,可以有多個

3.主鍵索引(primary key):主鍵索引在唯一索引的基礎(chǔ)上增加了不為空的約束,也就是 NOT NULL+UNIQUE,只能有一個

4.全文索引(FULLTEXT):MySQL 自帶的全文索引只支持英文。

一般使用專門的全文搜索引擎,比如 ES(ElasticSearch)

創(chuàng)建索引

#普通索引

ALTER TABLE 表名 ADD INDEX 索引名 (column_list);

#唯一索引

ALTER TABLE 表名 ADD UNIQUE 索引名(column_list);

#主鍵索引

ALTER TABLE 表名 ADD PRIMARY KEY 索引名(column_list);

#全文索引(字符串數(shù)據(jù)類型)

ALTER TABLE 表名 ADD fulltext 索引名(column_list);  

#查看索引

show index from student \G

這里用\G 代替分號結(jié)束符;可以格式化輸出數(shù)據(jù)信息。

#刪除索引

修改表的方式刪除索引

ALTER TABLE 表名 DROP INDEX 索引名;

刪除主鍵索引

ALTER TABLE 表名 DROP PRIMARY KEY;

索引列為一列時為單一索引;
多個列組合在一起創(chuàng)建的索引叫做聯(lián)合索引

什么情況下可以創(chuàng)建索引?

1.字段的數(shù)值有唯一性的限制,比如id

2.頻繁作為 WHERE 查詢條件的字段,尤其在數(shù)據(jù)表大的情況下

如果在數(shù)據(jù)量非常大的情況下,沒有 WHERE 條件過濾是非常可怕的。

3.需要經(jīng)常 GROUP BY 和 ORDER BY 的列

4.UPDATE、DELETE 的 WHERE 條件列,一般也需要創(chuàng)建索引

原理是因為我們需要先根據(jù) WHERE 條件列檢索出來這條記錄,然后再對它進行更新或刪除,非索引字段更新數(shù)據(jù)效果更明顯;

如果索引太多了,在更新數(shù)據(jù)的時候,如果涉及到索引更新,就會造成負擔。

5.DISTINCT 字段需要創(chuàng)建索引

6.做多表 JOIN 連接操作時,創(chuàng)建索引需要注意以下的原則

連接表的數(shù)量盡量不要超過 3 張,每增加一張表就相當于增加了 一次嵌套的循環(huán),數(shù)量級增長會非常快 對用于連接的字段創(chuàng)建索引,并且該字段在多張表中的類型必須一致。

什么時候不需要創(chuàng)建索引?

索引的價值是快速定位,如果起不到定位的字段通常是不需要創(chuàng)建索引的

1.WHERE 條件(包括 GROUP BY、ORDER BY)里用不到的字段不需要創(chuàng)建索引;

2.表記錄太少,比如少于 1000 行,那么是不需要創(chuàng)建索引;

3.字段中如果有大量重復數(shù)據(jù),也不用創(chuàng)建索引,比如性別字段;

4.頻繁更新的字段不一定要創(chuàng)建索引。因為更新數(shù)據(jù)的時候,也需要更新索引,如果索引太多,在更新索引的時候也會造成負擔,從而影響效率;

什么情況下索引失效?

1.如果索引列進行了表達式計算,使用函數(shù),則會失效

2.在 WHERE 子句中,如果在 OR 前的條件列進行了索引,而在 OR 后的條件列沒有進行索引,那么索引會失效。

3.當我們使用 LIKE 進行模糊查詢的時候,表達式不能是 % 開始

4.索引列盡量設置為 NOT NULL 約束

判斷索引列是否為 NOT NULL,往往需要走全表掃描,因此我們最好在設計數(shù)據(jù)表的時候就將字段設置為 NOT NULL 約束比如你可以將 INT 類型的字段,默認值設置為 0。將字符類型的默認值設置為空字符串 ('')

以上就是MySQL索引的基本語法的詳細內(nèi)容,更多關(guān)于MySQL索引語法的資料請關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • MySql索引提高查詢速度常用方法代碼示例
  • MySQL索引失效的幾種情況匯總
  • 詳解MySQL 聚簇索引與非聚簇索引
  • Mysql索引性能優(yōu)化問題解決方案
  • 導致MySQL索引失效的一些常見寫法總結(jié)
  • MySQL索引的各種類型
  • MySQL性能優(yōu)化之如何高效正確的使用索引
  • Mysql之組合索引方法詳解
  • MySQL選錯索引的原因以及解決方案

標簽:北京 日照 合肥 鎮(zhèn)江 鷹潭 貴州 臺灣 阜新

巨人網(wǎng)絡通訊聲明:本文標題《MySQL索引的基本語法》,本文關(guān)鍵詞  MySQL,索引,的,基本,語法,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《MySQL索引的基本語法》相關(guān)的同類信息!
  • 本頁收集關(guān)于MySQL索引的基本語法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 灌尿H堵住玩弄憋尿play视频| 色狠狠色噜噜AV天堂五区| 成人写真福利网| 国产区久久| 很黄很色动态图120秒免费| 成人亚洲电影| 午夜男女大片在线观看| 美女被人操| 16—17女人毛片毛片免费看| 亚洲GV2022男男Gay| 比比资源影音先锋| 亚洲 日韩 丝袜 熟女 变态| 成免费crm在线看系统| 香港经典a毛片免费观看看| 亚洲欧美日韩国产综合五月天| 惠东县| 第一章公交激战程晓柔| 听了会硬的30秒娇喘女语音| https黄视| 秘?韩H漫画羞羞漫画网站| 日本乱妇bbwbbw| 女人与拘做受全过程免费视频| 欧美人妇做爰A片免费看| **aaaaa毛片免费同男同女| 97天天操| 年轻18GAy白嫩青少年| 和两个小婕子做受久久久久精品| 美女曰逼视频| 最新黄色网页| 青春娱乐视频精品盛宴| jizz性欧美3| 韩国主播vip福利视频19禁| 啊?用力?嗯?快一点| 亚洲精品国产AV婷婷在线小说| 国产精品理论片| 范冰冰一级毛片免费看| 聊斋艳谭之性色生活| 玖玖香蕉视频| 毛片无遮挡A片免费无码| 乌克兰美女做爰XXXⅩ性| 欧美一区二区三区东南亚|