文章詳情頁(yè)
mysql優(yōu)化 - mysql 模糊查詢和order by同用如何建立索引?
瀏覽:97日期:2022-06-11 13:49:18
問(wèn)題描述
比如現(xiàn)在有這樣一個(gè)mysql語(yǔ)句:
select * from city where city_name like ’%hf%’ order by created_at;
這樣的sql語(yǔ)句如何建立索引呢,如果是建立復(fù)合索引,使用:
key(created_at,city_name)
這個(gè)由于created_at在前面,根據(jù)索引的最左匹配原則退化成了key(created_at).
key(city_name,created_at)
肯定也不行,前面是模糊查詢,這個(gè)復(fù)合索引退化成了key(city),那么這種情況只能建立單個(gè)的索引列來(lái)解決問(wèn)題嗎?請(qǐng)教各位大大.
問(wèn)題解答
回答1:前后都是%是不走索引的,都沒(méi)有索引退化的問(wèn)題,要么改sql成前綴匹配要么加全文索引(對(duì)于短字串并不合適),再有就是對(duì)于這種基本不變的數(shù)據(jù)在應(yīng)用里面是可以放到搜索引擎里的,可以利用到它的分詞器檢索
上一條:python 操作mysql如何經(jīng)量防止自己的程序在之后被惡意注入(說(shuō)白了就是問(wèn)一下python防注入的一些要點(diǎn))下一條:mysql - sql語(yǔ)句優(yōu)化問(wèn)題
相關(guān)文章:
1. Python爬蟲(chóng)如何爬取span和span中間的內(nèi)容并分別存入字典里?2. mysql - 把一個(gè)表中的數(shù)據(jù)count更新到另一個(gè)表里?3. 請(qǐng)教使用PDO連接MSSQL數(shù)據(jù)庫(kù)插入是亂碼問(wèn)題?4. python - 爬蟲(chóng)模擬登錄后,爬取csdn后臺(tái)文章列表遇到的問(wèn)題5. visual-studio - Python OpenCV: 奇怪的自動(dòng)補(bǔ)全問(wèn)題6. linux - Ubuntu下編譯Vim8(+python)無(wú)數(shù)次編譯失敗7. node.js - nodejs開(kāi)發(fā)中常用的連接mysql的庫(kù)8. mysql 查詢身份證號(hào)字段值有效的數(shù)據(jù)9. 視頻文件不能播放,怎么辦?10. mysql - 分庫(kù)分表、分區(qū)、讀寫(xiě)分離 這些都是用在什么場(chǎng)景下 ,會(huì)帶來(lái)哪些效率或者其他方面的好處
排行榜

熱門(mén)標(biāo)簽