MySQL的索引

【1】MySqL索引類型有:唯一索引、聚集(主鍵)索引、非聚集索引、全文索引
        聚集索引就是主鍵索引,具有相關主鍵的一些約束條件和信息,比如有且只能有一個聚集索引,並且值不能重複等等,在普通理解上來講,可以說聚集索引就是比非聚集索引多了一個唯一約束
        需要注意的是,最好是在建表的時候就創建一個聚集索引(如果沒有的話,系統會自動創建一個隱含列作爲表的聚集索引),由於聚集索引的物理順序上的特殊性,因此如果再在上邊創建索引的時候會根據索引列的排序移動全部數據行上面的順序,會非常的耗費時間與性能
【2】通過使用Explain關鍵字可以查看sql語句使用到的索引情況和查詢過程中的相關信息
        要活用Explain索引Type從好到壞分別是:NULL / CONST,SYSTEM / EQ_REF / REF / RANGE / INDEX / ALL

【3】多條件查詢只能使用某一條件的單個索引或者多條件的組合索引,組合索引要考慮條件的順序

【4】between and也是可以使用索引的,但是當between and 或in後使用了時間函數轉化之後索引便不再起作用

【5】時間轉化無法使用索引,這一層轉化實際上也是進行了一次函數運算,函數運算是無法使用索引的
    in是可以使用索引的,但是in超出了一定的範圍之後便無法使用索引
    數據量不大的情況下,性能耗費實際上更多的是在網絡上,而不單單是索引的問題

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章