可以用RLKE火REGEXP运算符在WHERE子句中使用正则表达式。使用正则表达式的方法有很多种:
表达式
|
描述
|
*
|
零次或多次重复
|
+
|
一个或多个重复
|
?
|
可选字符
|
.
|
任何字符
|
\.
|
区间
|
^
|
以……开始
|
$
|
以……结束
|
[abc]
|
只有a、b或c
|
[^abc]
|
非a、非b、非c
|
[a-z]
|
字符a到z
|
[0-9]
|
数字0到9
|
^…$
|
开始和结束
|
\d
|
任何数字
|
\D
|
任何非数字字符
|
\s
|
任何空格
|
\S
|
任何非空白字符
|
\w
|
任何字母数字字符
|
\W
|
任何非字母数字字符
|
{m}
|
m次重复
|
{m,n}
|
m到n次重复
|
找出名字以Christ开头的所有员工人数
SELECT COUNT(*) FROM employees WHERE first_name RLIKE ‘^christ’;
找出姓氏ab结尾的所有员工人数
SELECT COUNT(*) FROM employees WHERE last_name REGEXP ‘ab$’;
找出姓氏不包含a、e、i、o和u的所有员工人数
SELECT COUNT(*) FROM employees WHERE last_name NOT REGEXP ‘[aeiou]’;