• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
    當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

    老生常談MYSQL模式匹配REGEXP和like的用法

    來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-09 20:36:10
    文檔

    老生常談MYSQL模式匹配REGEXP和like的用法

    老生常談MYSQL模式匹配REGEXP和like的用法:like like要求整個(gè)數(shù)據(jù)都要匹配,而REGEXP只需要部分匹配即可。 也就是說(shuō),用Like,必須這個(gè)字段的所有內(nèi)容滿足條件,而REGEXP只需要有任何一個(gè)片段滿足即可。 MySQL提供標(biāo)準(zhǔn)的SQL模式匹配(like),以及一種基于象Unix實(shí)用程序如vi、grep和sed的
    推薦度:
    導(dǎo)讀老生常談MYSQL模式匹配REGEXP和like的用法:like like要求整個(gè)數(shù)據(jù)都要匹配,而REGEXP只需要部分匹配即可。 也就是說(shuō),用Like,必須這個(gè)字段的所有內(nèi)容滿足條件,而REGEXP只需要有任何一個(gè)片段滿足即可。 MySQL提供標(biāo)準(zhǔn)的SQL模式匹配(like),以及一種基于象Unix實(shí)用程序如vi、grep和sed的

    like

    like要求整個(gè)數(shù)據(jù)都要匹配,而REGEXP只需要部分匹配即可。 
    也就是說(shuō),用Like,必須這個(gè)字段的所有內(nèi)容滿足條件,而REGEXP只需要有任何一個(gè)片段滿足即可。

    MySQL提供標(biāo)準(zhǔn)的SQL模式匹配(like),以及一種基于象Unix實(shí)用程序如vi、grep和sed的擴(kuò)展正則表達(dá)式模式匹配的格式(regexp)。
    SQL的模式匹配允許你使用“_”匹配任何單個(gè)字符,而“%”匹配任意數(shù)目字符(包括零個(gè)字符)。在 MySQL中,SQL的模式缺省是忽略大小寫的。下面顯示一些例子。注意在你使用SQL模式時(shí),你不能使用=或!=;而使用LIKE或NOT LIKE比較操作符。

    為了找出以“b”開頭的名字:

    mysql> SELECT * FROM pet WHERE name LIKE "b%";
    +--------+--------+---------+------+------------+------------+
    | name | owner | species | sex | birth | death |
    +--------+--------+---------+------+------------+------------+
    | Buffy | Harold | dog | f | 1989-05-13 | NULL |
    | Bowser | Diane | dog | m | 1989-08-31 | 1995-07-29 |
    +--------+--------+---------+------+------------+------------+

    為了找出以“fy”結(jié)尾的名字:

    mysql> SELECT * FROM pet WHERE name LIKE "%fy";
    +--------+--------+---------+------+------------+-------+
    | name | owner | species | sex | birth | death |
    +--------+--------+---------+------+------------+-------+
    | Fluffy | Harold | cat | f | 1993-02-04 | NULL |
    | Buffy | Harold | dog | f | 1989-05-13 | NULL |
    +--------+--------+---------+------+------------+-------+

    為了找出包含一個(gè)“w”的名字:

    mysql> SELECT * FROM pet WHERE name LIKE "%w%";
    +----------+-------+---------+------+------------+------------+
    | name | owner | species | sex | birth | death |
    +----------+-------+---------+------+------------+------------+
    | Claws | Gwen | cat | m | 1994-03-17 | NULL |
    | Bowser | Diane | dog | m | 1989-08-31 | 1995-07-29 |
    | Whistler | Gwen | bird | NULL | 1997-12-09 | NULL |
    +----------+-------+---------+------+------------+------------+

    為了找出包含正好5個(gè)字符的名字,使用“_”模式字符:

    mysql> SELECT * FROM pet WHERE name LIKE "_____";
    +-------+--------+---------+------+------------+-------+
    | name | owner | species | sex | birth | death |
    +-------+--------+---------+------+------------+-------+
    | Claws | Gwen | cat | m | 1994-03-17 | NULL |
    | Buffy | Harold | dog | f | 1989-05-13 | NULL |
    +-------+--------+---------+------+------------+-------+

    REGEXP

    另外一種匹配是基于正則表達(dá)式的。當(dāng)你對(duì)這類模式進(jìn)行匹配測(cè)試時(shí),使用REGEXP和NOT REGEXP操作符(或RLIKE和NOT RLIKE,它們是同義詞)。

    “.”匹配任何單個(gè)的字符。

    一個(gè)字符類“[...]”匹配在方括號(hào)內(nèi)的任何字符。例如,“[abc]”匹配“a”、“b”或“c”。為了命名字符的一個(gè)范圍,使用一個(gè)“-”。“[a-z]”匹配任何小寫字母,而“[0-9]”匹配任何數(shù)字。
    “ * ”匹配零個(gè)或多個(gè)在它前面的東西。例如,“x*”匹配任何數(shù)量的“x”字符,“[0-9]*”匹配的任何數(shù)量的數(shù)字,而“.*”匹配任何數(shù)量的任何東西。

    正則表達(dá)式是區(qū)分大小寫的,但是如果你希望,你能使用一個(gè)字符類匹配兩種寫法。例如,“[aA]”匹配小寫或大寫的“a”而“[a-zA-Z]”匹配兩種寫法的任何字母。

    如果它出現(xiàn)在被測(cè)試值的任何地方,模式就匹配(只要他們匹配整個(gè)值,SQL模式匹配)。
    為了定位一個(gè)模式以便它必須匹配被測(cè)試值的開始或結(jié)尾,在模式開始處使用“^”或在模式的結(jié)尾用“$”。
    為了說(shuō)明擴(kuò)展正則表達(dá)式如何工作,上面所示的LIKE查詢?cè)谙旅媸褂肦EGEXP重寫:
    為了找出以“b”開頭的名字,使用“^”匹配名字的開始并且“[bB]”匹配小寫或大寫的“b”:

    mysql> SELECT * FROM pet WHERE name REGEXP "^[bB]";
    +--------+--------+---------+------+------------+------------+
    | name | owner | species | sex | birth | death |
    +--------+--------+---------+------+------------+------------+
    | Buffy | Harold | dog | f | 1989-05-13 | NULL |
    | Bowser | Diane | dog | m | 1989-08-31 | 1995-07-29 |
    +--------+--------+---------+------+------------+------------+

    為了找出以“fy”結(jié)尾的名字,使用“$”匹配名字的結(jié)尾:

    mysql> SELECT * FROM pet WHERE name REGEXP "fy$";
    +--------+--------+---------+------+------------+-------+
    | name | owner | species | sex | birth | death |
    +--------+--------+---------+------+------------+-------+
    | Fluffy | Harold | cat | f | 1993-02-04 | NULL |
    | Buffy | Harold | dog | f | 1989-05-13 | NULL |
    +--------+--------+---------+------+------------+-------+

    為了找出包含一個(gè)“w”的名字,使用“[wW]”匹配小寫或大寫的“w”:

    mysql> SELECT * FROM pet WHERE name REGEXP "[wW]";
    +----------+-------+---------+------+------------+------------+
    | name | owner | species | sex | birth | death |
    +----------+-------+---------+------+------------+------------+
    | Claws | Gwen | cat | m | 1994-03-17 | NULL |
    | Bowser | Diane | dog | m | 1989-08-31 | 1995-07-29 |
    | Whistler | Gwen | bird | NULL | 1997-12-09 | NULL |
    +----------+-------+---------+------+------------+------------+

    [^……],匹配不包含在[]的字符,如查詢出除了w/z/s開頭之外的人名

    select name from 表名 where name regexp '^[^wzs]';

    *,重復(fù)0次或多次,熟悉javascript正則的同學(xué)都知道 

    'str*'可以匹配st/str/strr/strrr……

    ?,重復(fù)0次或1次

    'str?'可以匹配st/str

    +,重復(fù)1次或多次

    'str+'可以匹配str/strr/strrr/strrrr……

    相比javascript里面的正則而言,這里的正則是簡(jiǎn)化版的,沒(méi)有惰性匹配/貪婪匹配,[]內(nèi)不支持\w\s\d這種語(yǔ)法,也不支持中文,相對(duì)簡(jiǎn)單。

    以上這篇老生常談MYSQL模式匹配 REGEXP和like的用法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

    您可能感興趣的文章:

  • 如何開啟mysql中的嚴(yán)格模式
  • 學(xué)習(xí)SQL語(yǔ)句(強(qiáng)大的group by與select from模式)
  • Mysql SQL服務(wù)器模式介紹
  • PHP基于單例模式實(shí)現(xiàn)的mysql類
  • NoSQL反模式 - 文檔數(shù)據(jù)庫(kù)篇
  • mysql中binlog_format模式與配置詳細(xì)分析
  • mysql啟用skip-name-resolve模式時(shí)出現(xiàn)Warning的處理辦法
  • MySQL中SQL模式的特點(diǎn)總結(jié)
  • 聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    老生常談MYSQL模式匹配REGEXP和like的用法

    老生常談MYSQL模式匹配REGEXP和like的用法:like like要求整個(gè)數(shù)據(jù)都要匹配,而REGEXP只需要部分匹配即可。 也就是說(shuō),用Like,必須這個(gè)字段的所有內(nèi)容滿足條件,而REGEXP只需要有任何一個(gè)片段滿足即可。 MySQL提供標(biāo)準(zhǔn)的SQL模式匹配(like),以及一種基于象Unix實(shí)用程序如vi、grep和sed的
    推薦度:
    標(biāo)簽: 使用 mysql like
    • 熱門焦點(diǎn)

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 国自产偷精品不卡在线| 国产精品麻豆高清在线观看| 久久久一本精品99久久精品88| 日韩精品在线观看视频| 日韩精品一区二区亚洲AV观看| 黑人巨茎精品欧美一区二区| 2021久久国自产拍精品| 亚洲精品无码永久在线观看| 国产vA免费精品高清在线观看| 99re这里只有精品热久久| 人妻少妇乱子伦精品| 亚洲国模精品一区| 精品久久久久久无码人妻热| 欧美极品欧美精品欧美视频| 97久久精品无码一区二区| 日韩精品无码一区二区中文字幕| 久99久无码精品视频免费播放| 99久久亚洲综合精品网站| 国产伦精品一区二区三区女 | 久久久91人妻无码精品蜜桃HD| 欧美精品一区二区精品久久| 国产精品日韩欧美一区二区三区| 亚洲色精品88色婷婷七月丁香| 久久亚洲国产精品123区| 国产精品亚洲欧美大片在线看 | 欧美成人精品一区二区三区| 精品无码国产一区二区三区AV | 国产福利精品在线观看| 老司机国内精品久久久久| 91精品国产综合久久久久久| 精品久久久无码人妻中文字幕豆芽| 欧美成人精品第一区二区三区| 国产午夜精品一本在线观看| 99国内精品久久久久久久| 欧美亚洲国产精品第一页| 久久这里只有精品久久| 91精品国产福利在线观看麻豆| 青青青国产精品国产精品久久久久| 日本精品久久久久中文字幕| 亚洲国产成人久久精品动漫| 四虎精品影院4hutv四虎|