欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

你可能有所不知的MySQL正則表達式總結(jié)

 更新時間:2023年05月26日 16:46:08   作者:中國胖子風清揚  
使用正則表達式可以檢索或替換符合某個模式的文本內(nèi)容,根據(jù)指定的匹配模式匹配文本中符合要求的特殊字符串,下面這篇文章主要給大家介紹了關(guān)于MySQL正則表達式的相關(guān)資料,需要的朋友可以參考下

一、 什么是正則表達式

正則表達式,又稱規(guī)則表達式,通常被用來檢索、替換那些符合某個模式(規(guī)則)的文本。

說白了就是起到匹配結(jié)果集的作用,從結(jié)果集中查詢到符合開發(fā)者想要的數(shù)據(jù)。

MySQL中的正則表達式需要使用到的關(guān)鍵字是:REGEXP

話不多說,上才藝??!

對于MySQL使用正則表達式,很多猿友一開始會聯(lián)想到MySQL的模糊查詢

SELECT * FROM user WHERE user_name LIKE '%張三';

是的沒錯,模糊查詢的確能干正則所能干的事,但是,所能干的也只有兩個方面。

  • % :匹配多個字符
  • _ :匹配一個字符

正則所能進行的匹配條件更多,重點來了!重點來了!重點來了!

二、正則表達式

1、^ :匹配輸入字符串的開始位置,也就是匹配的數(shù)據(jù)以指定的字符作為開頭。

SELECT product_name FROM product WHERE product_name REGEXP '^小米'; 
#匹配以“小米”開頭的數(shù)據(jù)

查詢結(jié)果

2、$ :匹配輸入字符串的結(jié)束位置,也就是匹配的數(shù)據(jù)以指定的字符進行結(jié)尾。

SELECT product_name FROM product WHERE product_name REGEXP '小米$'; 
#匹配以“小米”結(jié)尾的數(shù)據(jù)

查詢結(jié)果

3、. :匹配除 “\n” 之外的任何單個字符。要匹配包括 ‘\n’ 在內(nèi)的任何字符,請使用像 ‘[.\n]’ 的模式。

SELECT product_name FROM product WHERE product_name REGEXP '.小米.'; 
#范圍[0,1],相當于模糊查詢的 '_小米_'

查詢結(jié)果

4、[…] :字符集合。匹配所包含的任意一個字符。例如, ‘[abc]’ 可以匹配 “plain” 中的 ‘a’。

SELECT product_name FROM product WHERE product_name REGEXP '[小米]'; 
#匹配'小'或者'米'任意一個字符

查詢結(jié)果

5、[ ^ … ] :與 […] 相反

SELECT product_name FROM product WHERE product_name REGEXP '[^小米]';
 #不匹配'小米‘

查詢結(jié)果

6、| :多種選擇匹配模式

SELECT product_name FROM product WHERE product_name REGEXP '小米|儀器';
#匹配的數(shù)據(jù)中存在'小米'或者'儀器'

查詢結(jié)果

7、* :匹配前面的子表達式出現(xiàn)0次或者多次,相當于{0,N}

SELECT product_name FROM product WHERE product_name REGEXP '儀器*';

查詢結(jié)果

8、+ :匹配前面的子表達式出現(xiàn)1次或者多次,相當于{1,N}

SELECT product_name FROM product WHERE product_name REGEXP '儀器+';

查詢結(jié)果

9、{n} : 設(shè)置數(shù)據(jù)進行匹配的次數(shù)

SELECT product_name FROM product WHERE product_name REGEXP '小米{1}';
 #匹配數(shù)據(jù)集中包含一個小米字段的數(shù)據(jù)

查詢結(jié)果

10、{n,m} :設(shè)置最小的匹配次數(shù)和最大的匹配次數(shù)

SELECT product_name FROM product WHERE product_name REGEXP '小米{1,4}'; 
#匹配的數(shù)據(jù)中至少有一個'小米'字段或者最多只有四個'小米'字段

查詢結(jié)果

三、總結(jié)

正則表達式在每一種編程語言中都存在,為數(shù)據(jù)的提供了高效的查找方式,也節(jié)約了開發(fā)者對數(shù)據(jù)的處理時間,但是正則使用不正確也會帶來難以發(fā)現(xiàn)的數(shù)據(jù)查詢錯誤,所以好用、方便的前期是你得使用得正確。

到此這篇關(guān)于MySQL正則表達式總結(jié)的文章就介紹到這了,更多相關(guān)MySQL正則表達式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mysql5.5 master-slave(Replication)配置方法

    mysql5.5 master-slave(Replication)配置方法

    mysql5.5 master-slave(Replication)配置方法,需要的朋友可以參考下。
    2011-08-08
  • Mysql給普通分頁查詢結(jié)果加序號實操

    Mysql給普通分頁查詢結(jié)果加序號實操

    這篇文章主要介紹了Mysql給普通分頁查詢結(jié)果加序號實操,文章通過圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • MySQL如何將CSV文件快速導入MySQL中

    MySQL如何將CSV文件快速導入MySQL中

    有時候我們可能會把CSV中的數(shù)據(jù)導入到某個數(shù)據(jù)庫的表中,比如做報表分析的時候,下面這篇文章主要給大家介紹了關(guān)于MySQL如何將CSV文件快速導入MySQL中的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-04-04
  • MySql索引的作用以及對索引的理解

    MySql索引的作用以及對索引的理解

    這篇文章主要給大家介紹了關(guān)于MySql索引的作用以及對索引的理解,MySQL索引的建立對于MySQL的高效運行是很重要的,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-06-06
  • MySQL 8.0新特性 — 管理端口的使用簡介

    MySQL 8.0新特性 — 管理端口的使用簡介

    這篇文章主要介紹了MySQL 8.0新特性 — 管理端口的使用簡介,幫助大家更好的理解和學習使用MySQL,感興趣的朋友可以了解下
    2021-03-03
  • MySQL UPDATE更新語句精解

    MySQL UPDATE更新語句精解

    mysql update命令的一些詳細用法分析,真是不錯的好東西,建議大家看看。
    2009-03-03
  • MySQL連接及基本信息查看命令匯總

    MySQL連接及基本信息查看命令匯總

    這篇文章主要針對MySQL連接及基本信息查看命令進行了詳細匯總,感興趣的小伙伴們可以參考一下
    2016-02-02
  • mysql+mybatis實現(xiàn)存儲過程+事務(wù)?+?多并發(fā)流水號獲取

    mysql+mybatis實現(xiàn)存儲過程+事務(wù)?+?多并發(fā)流水號獲取

    這篇文章主要介紹了mysql+mybatis+存儲過程+事務(wù)?+?多并發(fā)流水號獲取,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • mysql-5.7.42升級到mysql-8.2.0(二進制方式)

    mysql-5.7.42升級到mysql-8.2.0(二進制方式)

    隨著數(shù)據(jù)量的增長和業(yè)務(wù)需求的變更,我們可能需要升級MySQL,本文主要介紹了mysql-5.7.42升級到mysql-8.2.0(二進制方式),具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • mysql 安全管理詳情

    mysql 安全管理詳情

    這篇文章主要介紹了mysql 安全管理,MySQL服務(wù)器的安全基礎(chǔ)是用戶應該對他們需要的數(shù)據(jù)具有適當?shù)脑L問權(quán),既不能多也不能少,換句話說,用戶不能對過多的數(shù)據(jù)具有過多的訪問權(quán),下面?zhèn)z看看文章詳細內(nèi)容吧
    2021-10-10

最新評論