摘要:本文介绍了有关字符串模式匹配的有关知识。标准
MySQL提供标准的
标准的SQL模式匹配
SQL的模式匹配允许
例如,在表pet中,
mysql> SELECT * FROM pet WHERE name LIKE "b%"; |
+--------+
| name | owner | species | sex | birth
+--------+
| Buffy | Harold | dog | f | 1989-05-13
| Bowser | Diane | dog | m | 1989-08-31
+--------+
为了找出以“fy”结
mysql> SELECT * FROM pet WHERE name LIKE "%fy"; |
+--------+
| name | owner | species | sex | birth
+--------+
| Fluffy | Harold | cat | f | 1993-02-04
| Buffy | Harold | dog | f | 1989-05-13
+--------+
为了找出包含一个“w
mysql> SELECT * FROM pet WHERE name LIKE "%w%"; |
+---------
| name | owner | species | sex | birth
+---------
| Claws | Gwen | cat | m | 1994-03-17
| Bowser | Diane | dog | m | 1989-08-31
| Whistler | Gwen | bird | NULL | 1997-12-09
+---------
为了找出包含正好5个
mysql> SELECT * FROM pet WHERE name LIKE "_____"; |
+-------+-
| name | owner | species | sex | birth
+-------+-
| Claws | Gwen | cat | m | 1994-03-17
| Buffy | Harold | dog | f | 1989-05-13
+-------+-
扩展正则表达式模式匹
由MySQL提供的模
RLIKE,它们是同
扩展正则表达式的一些
“.”匹配任何单个的
一个字符类“[...
“[a-z]”匹配任
“ * ”匹配零个或多个在它
量的任何东西。
正则表达式是区分大小
配两种写法的任何字母
如果它出现在被测试值
为了定位一个模式以便
为了说明扩展正则表达
为了找出以“b”开头
mysql> SELECT * FROM pet WHERE name REGEXP "^[bB]"; |
+--------+
| name | owner | species | sex | birth
+--------+
| Buffy | Harold | dog | f | 1989-05-13
| Bowser | Diane | dog | m | 1989-08-31
+--------+
为了找出以“fy”结
mysql> SELECT * FROM pet WHERE name REGEXP "fy$"; |
+--------+
| name | owner | species | sex | birth
+--------+
| Fluffy | Harold | cat | f | 1993-02-04
| Buffy | Harold | dog | f | 1989-05-13
+--------+
为了找出包含一个“w
mysql> SELECT * FROM pet WHERE name REGEXP "[wW]"; |
+---------
| name | owner | species | sex | birth
+---------
| Claws | Gwen | cat | m | 1994-03-17
| Bowser | Diane | dog | m | 1989-08-31
| Whistler | Gwen | bird | NULL | 1997-12-09
+---------
既然如果一个正规表达
就像如果你使用了一个
为了找出包含正好5个
mysql> SELECT * FROM pet WHERE name REGEXP "^.....$"; |
+-------+-
| name | owner | species | sex | birth
+-------+-
| Claws | Gwen | cat | m | 1994-03-17
| Buffy | Harold | dog | f | 1989-05-13
+-------+-
你也可以使用“{n}
mysql> SELECT * FROM pet WHERE name REGEXP "^.{5}$"; |
+-------+-
| name | owner | species | sex | birth
+-------+-
| Claws | Gwen | cat | m | 1994-03-17
| Buffy | Harold | dog | f | 1989-05-13
+-------+-
本介绍了有关字符串模
是根据Unix系统的