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