mysql正则表达式

1.我们经常用到的LIKE查询语法
匹配到用户名为b开头的用户,不区分大小写
SELECT * FROM customers WHERE last_name LIKE 'b%';

当热你也可以把%号放在前面,这样话你就会匹配到以b结尾的名字。

2.今天我们来学习,REGEXP 正则匹配 后面可以跟 |(或者) ^(以什么开头)
beginning
$ end
| logical or 1
[abcd]
[-] 范围
SELECT * FROM customers
--名字包含field
WHERE last_name LIKE '%field%'
--名字包含field或者是mac
WHERE last_name REGEXP 'field|mac'
--名字包含field或者是mac或者是以gh结尾
WHERE last_name REGEXP 'field|^mac|gh$'
-- 名字包含ae、be、ce
WHERE last_name REGEXP '[a-c]e'

练习题:
获取名字为ELka或者Ambur的顾客
SELECT * FROM customers WHERE first_name REGEXP 'Elka|Ambur'

返回姓氏以ey或者on结尾的顾客
SELECT * FROM customers WHERE last_name REGEXP 'ey$|on$'

posted @ 2021-11-05 14:39  老天啊  阅读(169)  评论(0编辑  收藏  举报