正则表达式_讨论帖

黛琳ghz
2022年度博客之星前端领域TOP 8
2022-11-04 09:32:01

13.9 使用正则表达式查询数据
MySQL中匹配正则表达式需要使用关键字REGEXP,在REGEXP关键字后面跟上正则表达式的规则即可。因此,当需要使用正则表达式查询数据时,只需要在WHERE条件中使用REGEXP关键字匹配相应的正则表达式即可。

语法规则如下:

SELECT column_name1 [, column_name2, … , column_namen]
FROM table_name
WHERE column REGEXP expr
·column_name1 [,column_name2,…,column_namen]:字段名列表。

·table_name:表名。

·expr:正则表达式规则。

例如,查询t_goods数据表中名称以“裙”字结尾的所有数据。

mysql> SELECT id, t_category_id, t_category, t_name, t_price
-> FROM t_goods
-> WHERE t_name REGEXP '裙$';
+----+---------------+-----------------+-------------+---------+
| id | t_category_id | t_category | t_name | t_price |
+----+---------------+-----------------+-------------+---------+
| 2 | 1 | 女装/女士精品 | 连衣裙 | 79.90 |
| 5 | 1 | 女装/女士精品 | 百褶裙 | 29.90 |
+----+---------------+-----------------+-------------+---------+
2 rows in set (0.13 sec)
结果显示,存在两条符合条件的数据记录。

查询t_goods数据表中名称以“牛”开头的数据记录。

mysql> SELECT id, t_category_id, t_category, t_name, t_price
-> FROM t_goods
-> WHERE t_name REGEXP '^牛';
+----+---------------+-----------------+-------------+---------+
| id | t_category_id | t_category | t_name | t_price |
+----+---------------+-----------------+-------------+---------+
| 4 | 1 | 女装/女士精品 | 牛仔裤 | 89.90 |
+----+---------------+-----------------+-------------+---------+
1 row in set (0.00 sec)
结果显示,只存在一条符合条件的数据记录。

注意:在MySQL中使用正则表达式匹配某种条件时,只需要在WHERE条件语句中使用REGEXP关键字指定需要匹配的正则表达式规则即可。有关正则表达式的知识,读者可以参考相关的学习资料,笔者不再赘述。

...全文
27 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

2

社区成员

发帖
与我相关
我的任务
社区管理员
  • community_2239
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧