如何建立mysql索引?
建立索引原則
1、左字首原則 :
mysql索引匹配會從右匹配,到遇到( > < between like)終止。如 我們建立索引(a,b,c,d), a = 1 and b=2 and c>3 and d=4。此時,索引d不會被用上。真正有效的索引(a, b, c)。如果把索引建立成(a,b,d,c), 則四個索引都能被用上
2、in 和 = 順序可以隨意。
如可建立索引(a, b , c)任意順序 , a = 1 and c=2 and b=3 , 三個索引依然有效。這是mysql查詢優化器優化成可以識別的索引形式
3、擴充套件索引,盡量不新建索引。
如原有索引(a), 現在有需求,需要索引(a, b),這時你完全沒必要去新建乙個索引(a, b)。你只需要擴充套件你原有的索引(a),把它改為(a, b).此時, 既能保證原有的索引,也能達到新索引的目的。如 a = 1 a = 1 and b=2 這兩個分別能走到索引(a),(a, b)
4、盡量選擇區分度高的列作為索引
區分度的公式是count(distinct x)/count(*), 表示欄位不重複的比例,比例越大我們掃瞄的記錄數越少,唯一鍵的區分度是1,而一些狀態、性別字段可能在大資料面前區分度就是0
(索引)建立MySQL索引
建立索引的必要性 主鍵預設是建立索引的,而且具有唯一性 合適地建立索引後比不建立索引,提高了查詢速度 建立索引的語法 簡單索引 可以有重複資料 create index indexname on tablename column name 1舉例子說明如 建立乙個資料表,設定一些初始的資料,然後採用...
c mysql建立索引 MySQL 建立索引
1 索引建立原則 1 搜尋的索引列,不一定是所要選擇的列。換句話說,最適合索引的列是出現在where子句中的列,或連線子句中指定的列,而不是出現在select關鍵字後的選擇列表中的列。2 使用唯一索引。考慮某列中值的分布。索引的列的基數越大,索引的效果越好。3 使用短索引。如果對字串列進行索引,應該...
mysql索引新增 mysql 建立索引
mysql 索引 內容主要摘抄自 mysql5.7從入門到精通 索引是對資料庫表中的一列或多列進行排序的一種資料結構,使用索引可以提高資料庫中特定資料的查詢速度。一 索引含義和特點 索引是乙個單獨的 儲存在磁碟上的資料庫結構,它們包含著對資料表裡所有記錄的引用指標。mysql 中索引儲存型別有兩種 ...