主頁(yè) > 知識(shí)庫(kù) > mysql對(duì)于模糊查詢like的一些匯總

mysql對(duì)于模糊查詢like的一些匯總

熱門標(biāo)簽:百度地圖圖標(biāo)標(biāo)注中心 申請(qǐng)外呼電話線路 廣東人工電話機(jī)器人 湖南人工外呼系統(tǒng)多少錢 石家莊電商外呼系統(tǒng) 日照旅游地圖標(biāo)注 芒果電話機(jī)器人自動(dòng)化 信陽(yáng)穩(wěn)定外呼系統(tǒng)運(yùn)營(yíng)商 南通自動(dòng)外呼系統(tǒng)軟件

1、常見(jiàn)用法:

(1)搭配%使用

%代表一個(gè)或多個(gè)字符的通配符,譬如查詢字段name中以大開(kāi)頭的數(shù)據(jù):

(2)搭配_使用

_代表僅僅一個(gè)字符的通配符,把上面那條查詢語(yǔ)句中的%改為_(kāi),會(huì)發(fā)現(xiàn)只能查詢出下面一條數(shù)據(jù):

2、使用like模糊查詢會(huì)導(dǎo)致索引失效,在數(shù)據(jù)量大的時(shí)候會(huì)有性能問(wèn)題

(1)盡量少以%或者_(dá)開(kāi)頭進(jìn)行模糊查詢

通過(guò)explain執(zhí)行計(jì)劃,我們發(fā)現(xiàn),使用like模糊查詢時(shí),如果不以%和_開(kāi)頭查詢的話,索引還是有效的

以%或者_(dá)開(kāi)頭查詢,索引失效

(2)使用覆蓋索引

當(dāng)查詢的的條件和查詢的結(jié)果都是索引中的字段的時(shí)候,這個(gè)索引我們可以稱之為覆蓋索引,這個(gè)時(shí)候,使用like模糊查詢索引是有效的

InnoDB中主鍵可以不添加進(jìn)索引中

注意:使用覆蓋索引,對(duì)于字段的長(zhǎng)度是由要求限制的,一般超過(guò)長(zhǎng)度,索引也會(huì)失效

這里如果我查詢中帶有descripition字段,則覆蓋索引也會(huì)失效(我這里的數(shù)據(jù)庫(kù)經(jīng)過(guò)測(cè)試最多只支持255長(zhǎng)度的字段)

(3)使用全文索引

給字段建立Full Text索引,然后使用match(...) against(...)進(jìn)行檢索

注意:這種全文索引方式只對(duì)英文單詞起作用,對(duì)于中文漢字支持不夠友好,需要額外去mysql的配置文件做一些配置修改,讓它額外支持中文

(4)使用一些額外的全文搜索引擎來(lái)解決

Lucene,solr,elasticsearch等等

基本原理是:把mysql配置文件中的ft_min_word_len=3改為1。(沒(méi)有這項(xiàng)就直接添加),然后新建一個(gè)字段來(lái)保持分詞結(jié)果,給這個(gè)字段建立全文索引。然后實(shí)現(xiàn)一個(gè)分詞模塊,把詞語(yǔ)“大家好”拆分為“大 大家 大家好 家 家好 好”。然后用match .. against 來(lái)代替like %%,查詢出來(lái)的結(jié)果跟like的結(jié)果基本相同(如果分詞合理的話),但是效率比like高至少10倍以上。

總結(jié)

到此這篇關(guān)于mysql對(duì)于模糊查詢like的文章就介紹到這了,更多相關(guān)mysql模糊查詢like內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • MySQL 數(shù)據(jù)庫(kù) like 語(yǔ)句通配符模糊查詢小結(jié)
  • MySQL Like模糊查詢速度太慢如何解決
  • Mysql| 使用通配符進(jìn)行模糊查詢?cè)斀?like,%,_)
  • mysql模糊查詢like與REGEXP的使用詳細(xì)介紹
  • mysql模糊查詢like和regexp小結(jié)
  • MySql like模糊查詢通配符使用詳細(xì)介紹
  • mysql中l(wèi)ike % %模糊查詢的實(shí)現(xiàn)

標(biāo)簽:惠州 沈陽(yáng) 天津 阿里 呼和浩特 牡丹江 公主嶺 合肥

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《mysql對(duì)于模糊查詢like的一些匯總》,本文關(guān)鍵詞  mysql,對(duì)于,模糊,查詢,like,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《mysql對(duì)于模糊查詢like的一些匯總》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于mysql對(duì)于模糊查詢like的一些匯總的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章