如何使用mysql索引查询_MYSQL索引问题:索引在查询中如何使用?
假如你有一個表,SQL>CREATETABLEtest_tab(2idINT,3nameVARCHAR(10),4ageINT,5valVARCHAR(10)6);你的業務,有一個查詢,是SELECT*FROMtest_tabWHEREname=一個外部輸入的數據剛開始,數據不多的時候,執行效果還不錯。隨著數據量的增加,這個查詢,執行起來,越來越慢了。然后在name上面建立了索引CREATEINDEXidx_test4_nameONtest_tab(name);這樣,可以加快前面那個查詢的速度。但是,某天,你執行了下面這個SQL,發現速度又慢了SELECT*FROMtest_tabWHEREage=25為啥呢?因為age字段上面,沒有索引索引只在name上面有換句話說,也就是WHERE里面的條件,會自動判斷,有沒有可用的索引,如果有,該不該用。多列索引,就是一個索引,包含了2個字段。例如:CREATEINDEXidx_test_name_ageONtest_tab(name,age);那么SELECT*FROMtest_tabWHEREnameLIKE'張%'ANDage=25這樣的查詢,將能夠使用上面的索引。多列索引,還有一個可用的情況就是,某些情況下,可能查詢,只訪問索引就足夠了,不需要再訪問表了。例如:SELECTAVG(avg)AS平均年齡FROMtest_tabWHEREnameLIKE'張%'這個時候,name與age都包含在索引里面。查詢不需要去檢索表中的數據。
閱讀全文 >
總結
以上是生活随笔為你收集整理的如何使用mysql索引查询_MYSQL索引问题:索引在查询中如何使用?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端微信签名验证工具_微信jssdk 签
- 下一篇: lnmp中怎么运行ngin和mysql_