MySQL 另一种强大的模糊匹配——正则表达式(Regexp)的示例详解

说到MySQL的模糊匹配,大家都能想到like,很少人会知道regexp,regexp 可以实现更强大的模糊匹配功能,而且还有很多其他好用的功能。

比如有一个学生表 student ,要查询姓赵、王、李、陈的学生,用like写会啰嗦,而且性能不好:

SELECT * FROM student  WHERE name like '赵%' or name like '王%' or name like '李%' or name like '陈%' ;

用regexp 写则很简单:

SELECT * FROM student  WHERE name  REGEXP  '^赵|^王|^李|^陈' ;

 

示例:

1,匹配以陈开头的学生:

SELECT * FROM student  WHERE name  REGEXP  '^陈';

2,匹配以豪结尾的学生:

SELECT * FROM student  WHERE name  REGEXP  '豪$';

3,匹配名字中含有 英、雄、豪、杰 其中一个字的学生

SELECT * FROM student  WHERE name  REGEXP  '|||' ;

或者 SELECT * FROM student  WHERE name  R

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值