1、什么事索引(本質:數據結構)
索引是幫助MySQL高效獲取數據的數據結構。
2、優勢:
1、提高數據檢索的效率,降低數據庫IO成本
2、通過索引對數據進行排序,降低數據排序的成本,降低了CPU的消耗
3、劣勢:
降低更新表的速度,如對表進行update 、delete、insert等操作時,MySQL不急要保存數據,還要保存一下索引文件每次添加了索引列的字段,都會調整因為更新帶來的鍵值變化后的索引信息。
4、適合創建索引條件
1.、主鍵自動建立唯一索引
2、頻繁作為查詢條件的字段應該建立索引
3、查詢中與其他表關聯的字段,外鍵關系建立索引
4、單鍵/組合索引的選擇問題,組合索引性價比更高
5、查詢中排序的字段,排序字段若通過索引去訪問將大大提高排序效率
6、查詢中統計或者分組字段
5、不適合創建索引條件
1、表記錄少的
2、經常增刪改的表或者字段
3、where條件里用不到的字段不創建索引
4、過濾性不好的不適合建索引