SELECT*FROMpetWHEREnameLIKE"b%";+--------+--------+---------+------+-------" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

MySQL 通配符學(xué)習(xí)小結(jié)

系統(tǒng) 1834 0

MySQL 通配符

?

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 |
+-------+--------+---------+------+------------+-------+

由MySQL提供的模式匹配的其它類型是使用擴(kuò)展正則表達(dá)式。當(dāng)你對這類模式進(jìn)行匹配測試時(shí),使用REGEXP和NOT REGEXP操作符(或RLIKE和NOT RLIKE,它們是同義詞)。

?

擴(kuò)展正則表達(dá)式的一些字符是:

“.”匹配不論什么單個(gè)的字符。
一個(gè)字符類“ [...] ”匹配在方括號內(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ū)分大寫和小寫的,可是假設(shè)你希望,你能使用一個(gè)字符類匹配兩種寫法。比如,“[aA]”匹配小寫或大寫的“a”而“[a-zA-Z]”匹配兩種寫法的不論什么字母。

假設(shè)它出如今被測試值的不論什么地方,模式就匹配(僅僅要他們匹配整個(gè)值,SQL模式匹配)。
為了定位一個(gè)模式以便它必須匹配被測試值的開始或結(jié)尾,在模式開始處使用“^”或在模式的結(jié)尾用“$”。
為了說明擴(kuò)展正則表達(dá)式怎樣工作,上面所看到的的LIKE查詢在以下使用REGEXP重寫:

?

為了找出以“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 |
+----------+-------+---------+------+------------+------------+

既然假設(shè)一個(gè)正規(guī)表達(dá)式出如今值的不論什么地方,其模式匹配了,就不必再先前的查詢中在模式的雙方面放置一個(gè)通配符以使得它匹配整個(gè)值,就像假設(shè)你使用了一個(gè)SQL模式那樣。

?

為了找出包括正好5個(gè)字符的名字,使用“^”和“$”匹配名字的開始和結(jié)尾,和5個(gè)“.”實(shí)例在兩者之間:

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

?

你也能夠使用“{n}”“反復(fù)n次”操作符重寫先前的查詢:

mysql> SELECT * FROM pet WHERE name REGEXP " ^.{5}$ ";
+-------+--------+---------+------+------------+-------+
| name | owner | species | sex | birth | death |
+-------+--------+---------+------+------------+-------+
| Claws | Gwen | cat | m | 1994-03-17 | NULL |
| Buffy | Harold | dog | f | 1989-05-13 | NULL |
+-------+--------+---------+------+------------+-------+

?

http://www.playhosts.com/bbs/read.php?tid=12357

=====================================================================

?

MySQL 通配符學(xué)習(xí)小結(jié)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产精品婷婷久久爽一下 | 成人在线观看不卡 | 国产福利免费 | 久久免费小视频 | 五月天婷婷在线视频国产在线 | 一级黄色毛片 | 91在线免费视频观看 | 在线看片福利 | 成人淫片 | 五月天婷婷缴情五月免费观看 | 色噜噜狠狠一区二区三区 | 亚洲一区二区三区精品视频 | 天天干天天做天天操 | 精品国产夜色在线 | 久久99这里只有精品 | 日本黄色网址免费 | 亚洲欧美中文字幕专区 | 成人18免费网站 | 国产成人99 | 国产香蕉偷在线观看视频 | 26uuu在线观看 | 伊人精品网 | 成人久久网站 | 99热这里只有精品88 | 久久久久国产精品四虎 | 高清性色生活片久久久 | 久色免费视频 | 99r精品| 久久久国产这里有的是精品 | 一级特黄高清完整大片 | 69视频在线观看福利视频 | 久久成人国产精品二三区 | 98色花堂永久地址国产精品 | 日日操夜夜操天天操 | 久久亚洲精品成人综合 | 日韩一区二区三区视频在线观看 | 欧美久久视频 | 亚洲国产精品一区二区九九 | 日本亚州在线播放精品 | 精品免费tv久久久久久久 | 一级毛片在线看在线播放 |