在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

MySQL中的字符串模式匹配实例讲解

109次阅读
没有评论

共计 4240 个字符,预计需要花费 11 分钟才能阅读完成。

这篇文章主要介绍“MySQL 中的字符串模式匹配实例讲解”,在日常操作中,相信很多人在 MySQL 中的字符串模式匹配实例讲解问题上存在疑惑,丸趣 TV 小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL 中的字符串模式匹配实例讲解”的疑惑有所帮助!接下来,请跟着丸趣 TV 小编一起来学习吧!

MySQL 提供标准的 SQL 模式匹配,以及一种基于象 Unix 实用程序如 vi、grep 和 sed 的扩展正则表达式模式匹配的格式。

标准的 SQL 模式匹配

SQL 的模式匹配允许你使用“_”匹配任何单个字符,而“%”匹配任意数目字符 (包括零个字符)。在 MySQL 中,SQL 的模式缺省是忽略大小写的。下面显示一些例子。注意在你使用 SQL 模式时,你不能使用 = 或!=;而使用 LIKE 或 NOT LIKE 比较操作符。

例如,在表 pet 中,为了找出以“b”开头的名字:

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”结尾的名字:

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  |

+——–+——–+———+——+————+——-+

为了找出包含一个“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 个字符的名字,使用“_”模式字符:

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 提供的模式匹配的其他类型是使用扩展正则表达式。当你对这类模式进行匹配测试时,使用 REGEXP 和 NOT REGEXP 操作符 (或 RLIKE 和 NOT

RLIKE,它们是同义词 )。

扩展正则表达式的一些字符是:

“.”匹配任何单个的字符。

一个字符类“[…]”匹配在方括号内的任何字符。例如,“[abc]”匹配“a”、“b”或“c”。为了命名字符的一个范围,使用一个“-”。

“[a-z]”匹配任何小写字母,而“[0-9]”匹配任何数字。

“*”匹配零个或多个在它前面的东西。例如,“x*”匹配任何数量的“x”字符,“[0-9]*”匹配的任何数量的数字,而“.*”匹配任何数

量的任何东西。

正则表达式是区分大小写的,但是如果你希望,你能使用一个字符类匹配两种写法。例如,“[aA]”匹配小写或大写的“a”而“[a-zA-Z]”匹

配两种写法的任何字母。

如果它出现在被测试值的任何地方,模式就匹配 (只要他们匹配整个值,SQL 模式匹配)。

为了定位一个模式以便它必须匹配被测试值的开始或结尾,在模式开始处使用“^”或在模式的结尾用“$”。

为了说明扩展正则表达式如何工作,上面所示的 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”结尾的名字,使用“$”匹配名字的结尾:

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  |

+——–+——–+———+——+————+——-+

为了找出包含一个“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  |

+———-+——-+———+——+————+————+

既然如果一个正规表达式出现在值的任何地方,其模式匹配了,就不必再先前的查询中在模式的两方面放置一个通配符以使得它匹配整个值,

就像如果你使用了一个 SQL 模式那样。

为了找出包含正好 5 个字符的名字,使用“^”和“$”匹配名字的开始和结尾,和 5 个“.”实例在两者之间:

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}”“重复 n 次”操作符重写先前的查询:

mysql SELECT * FROM pet WHERE name REGEXP ^.{5}$

+——-+——–+———+——+————+——-+

| name  | owner  | species | sex  | birth  | death |

到此,关于“MySQL 中的字符串模式匹配实例讲解”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注丸趣 TV 网站,丸趣 TV 小编会继续努力为大家带来更多实用的文章!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-28发表,共计4240字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 亚洲日韩精品射精日 | 中文字幕91在线 | 亚洲小说专区 | 欧美aaaa黄色一级毛片 | 撕开奶罩揉吃奶高潮av在线观看 | 亚洲第一在线播放 | 亚洲欧美综合图区官网 | 伊人久久综合谁合综合久久 | 亚洲欧美一区二区三区在线播放 | 日韩免费无码视频一区二区三区 | 中文字幕第一页在线视频 | 夜夜欢天天干 | 真正全免费视频a毛片 | 亚洲欧美另类日韩 | 久久99热久久精品91 | 全黄a免费一级毛片人人爱 全黄h全肉边做边吃奶视频 | 免费观看性欧美一级 | 国产精品国产三级国产av剧情 | 天干天干天啪啪夜爽爽av | 伦伦影院午夜理论片 | 亚洲国产福利精品一区二区 | 国产成人精品日本亚洲语言 | 在线精品亚洲一区二区动态图 | 双乳奶水饱满少妇呻吟免费看 | 欧美 日韩 亚洲另类专区 | h免费看| 久久久婷 | 中日韩视频在线观看 | 日本在线一卡二卡毛片 | 免费国精产品自偷自偷免费看 | 久久精品综合一区二区三区 | 午夜资源站 | 亚洲欧美乱综合图片区小说区 | 男女做爰高清免费视频黄 | 天堂网在线观看在线观看精品 | 精品国产午夜久久久久九九 | 欧美成人免费香蕉 | 亚洲av无码一区东京热 | 天天av天天翘天天综合网 | 亚洲欧美日本在线观看 | 四虎影视在线永久免费看黄 |