MySQL学习-运算符(六)

174 阅读1分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第6天,点击查看活动详情

前言

上篇我们又学习了一部分比较运算符,有兴趣的小伙伴可以阅读(# MySQL学习-运算符(五))。
下面继续学习MySQL中的运算符

比较运算符

REGEXP 正则表达式

REGEXP运算符用来匹配字符串,语法格式为:expr REGEXP 匹配条件。如果expr满足匹配条件,返回1;如果不满足,则返回0.若expr或匹配条件任意一个为NULL,则结果也为NULL。 REGEXP运算符在进行匹配时,常用的有下面几种通配符:

名称说明
^匹配以该字符后面的字符开头的字符串。
$匹配以该字符前面的字符结尾的字符串。
.匹配任何一个单字符。
[...]匹配在方括号内的任何字符。例如,“[abc]”匹配“a”或“b”或“c”。为了命名字符的范围,使用一个‘-’。“[a-z]”匹配任何字母,而“[0-9]”匹配任何数字。
*匹配零个或多个在它前面的字符。例如,“x*”匹配任何数量的‘x’字符,“[0-9]*”匹配任何数量的数字,而“*”匹配任何数量的任何字符。

运算符示例一

SELECT 'xiaoming' REGEXP '^x', 'xiaoming' REGEXP 'g$'
FROM DUAL
'xiaoming' REGEXP '^x''xiaoming' REGEXP 'g$'
11

可以看到结果是1,说明字符'xiaoming'是以字符'x'开头,字符'g'结尾的。

运算符示例二

SELECT 'xiaoming' REGEXP 'xi.o'
FROM DUAL
'xiaoming' REGEXP 'xi.o'
1

可以看到结果是1,说明字符'xiaoming'是包含字符'xi',中间未知字符,紧跟着字符'o'的。

运算符示例二

SELECT 'xiaoming' REGEXP '[abc]'
FROM DUAL
'xiaoming' REGEXP '[abc]'
1

可以看到结果是1,说明字符'xiaoming'是包含字符'a'的。

RLIKE 正则表达式

RLIKE与REGEXP用法相同。

运算符示例二

SELECT 'xiaoming' RLIKE '[0-9]'
FROM DUAL
'xiaoming' RLIKE '[0-9]'
0

可以看到结果是0,说明字符'xiaoming'是不包含任何数字字符的。 今天就把比较运算符学完了。 好了,今天先学到这里,明天继续。