亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

你知道什么是 MySQL 的模糊查詢?

作者 | luanhz

責(zé)編 | 郭芮

本文對MySQL中幾種常用的模糊搜索方式進行了介紹,包括LIKE通配符、RegExp正則匹配、內(nèi)置字符串函數(shù)以及全文索引,最后給出了性能對比。

1 引言

MySQL根據(jù)不同的應(yīng)用場景,支持的模糊搜索方式有多種,例如應(yīng)用最廣泛的可能是Like匹配和RegExp正則匹配,二者雖然用法和原理都很相似,但實際上匹配原則卻不盡相同,其中Like要求模式串與整個目標(biāo)字段完全匹配才檢索該記錄,而RegExp則是要求目標(biāo)字段包含模式串即可。

對于簡單的判斷模式串是否存在類型的模糊搜索,應(yīng)用MySQL內(nèi)置函數(shù)即可實現(xiàn),例如Instr、Locate、Position等。

當(dāng)然,提到MySQL查詢性能就不得不提到索引,對于字段模糊查詢需求,我們也可以考慮添加全文索引(Fulltext)。

注:本文所用MySQL版本8.0.19,可視化工具Navicat Primium。

2  4種模糊查詢

為了便于描述和測試不同模糊查詢方式結(jié)果,首先給出一個簡單的測試用數(shù)據(jù)表tests如下:

你知道什么是 MySQL 的模糊查詢?

其中,tests表僅含有一個名為words的字段,并對該字段添加全文索引。表中共有6條記錄。

你知道什么是 MySQL 的模糊查詢?

Like

Like算作MySQL中的謂詞,其應(yīng)用與is、=、>和<等符號用法類似。Like主要支持兩種通配符,分別是"_"和"%",其中前者代表匹配1個任意字符,常用于充當(dāng)占位符;而后者代表匹配0個或多個任意字符。從某種意義上講,Like可看作是一個精簡的正則表達式功能。

例如,在如上表中查找所有以"hello"開頭的記錄,則其SQL語句為:

1SELECT words FROM tests WHERE words LIKE 'hello%';

分享到:
標(biāo)簽:模糊 查詢 MySQL
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運動步數(shù)有氧達人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定