共计 4591 个字符,预计需要花费 12 分钟才能阅读完成。
这篇文章主要介绍“MySQL REGEXP 怎么使用”,在日常操作中,相信很多人在 MySQL REGEXP 怎么使用问题上存在疑惑,丸趣 TV 小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL REGEXP 怎么使用”的疑惑有所帮助!接下来,请跟着丸趣 TV 小编一起来学习吧!
1. 关于 NULL
普通的比较运算符用于 NULL,返回的结果都是 NULL。
mysql select 0 = null, 1 null, 2 null, 3 null, 4 = null, 5 = null;
+———-+———–+———-+———-+———–+———–+
| 0 = null | 1 null | 2 null | 3 null | 4 = null | 5 = null |
+———-+———–+———-+———-+———–+———–+
| NULL | NULL | NULL | NULL | NULL | NULL |
+———-+———–+———-+———-+———–+———–+
1 row in set (0.00 sec)
[@more@] 要判断一个值是否为 NULL,应该使用 IS NULL、IS NOT NULL 或 =(NULL 安全地等于)等运算符。
mysql select 0 is null, null is null;
+———–+————–+
| 0 is null | null is null |
+———–+————–+
| 0 | 1 |
+———–+————–+
1 row in set (0.00 sec)
mysql select 0 is not null, null is not null;
+—————+——————+
| 0 is not null | null is not null |
+—————+——————+
| 1 | 0 |
+—————+——————+
1 row in set (0.00 sec)
mysql select 0 = null, null = null;
+————+—————+
| 0 = null | null = null |
+————+—————+
| 0 | 1 |
+————+—————+
1 row in set (0.00 sec)
在 MySQL 中,NULL 不同于空值。
mysql select IS NULL;
+————+
| IS NULL |
+————+
| 0 |
+————+
1 row in set (0.00 sec)
2.REGEXP
REGEXP 运算符可以执行较复杂的字符串比较运算,这主要通过正则表达式来实现。正则表达式由标准字符和专门定义匹配模式的元字符混合组成,下表列出了正则表达式中经常使用的元字符:
元字符 作用
+ 匹配 1 个或更多个前面字符的值
* 匹配 0 个或更多个前面字符的值
? 匹配 0 个或 1 前面字符的值
. 匹配任意字符
^ 匹配字符串的开始部分
$ 匹配字符串的末尾部分
s 匹配单个空白空间字符,包括制表符合换行符
S 匹配空白空间字符以外的一切字符
d 匹配 0 到 9 之间的数字
w 匹配字母、数字和下滑线字符
W 匹配用 w 不能匹配的任意字符
mysql select google regexp go+ogle , google regexp go*ogle , google reg
exp go?ogle
+—————————+—————————+———————–
—-+
| google regexp go+ogle | google regexp go*ogle | google regexp go?og
le |
+—————————+—————————+———————–
—-+
| 1 | 1 |
1 |
+—————————+—————————+———————–
—-+
1 row in set (0.00 sec)
mysql select google regexp go+gle , google regexp go*gle , google regex
p go?gle
+————————–+————————–+————————-
-+
| google regexp go+gle | google regexp go*gle | google regexp go?gle
|
+————————–+————————–+————————-
-+
| 1 | 1 | 0
|
+————————–+————————–+————————-
-+
1 row in set (0.00 sec)
mysql select google regexp gooo+gle , google regexp gooo*gle , google r
egexp gooo?gle
+—————————-+—————————-+———————
——-+
| google regexp gooo+gle | google regexp gooo*gle | google regexp goo
o?gle |
+—————————-+—————————-+———————
——-+
| 0 | 1 |
1 |
+—————————-+—————————-+———————
——-+
1 row in set (0.00 sec)
mysql select google regexp ^goo , google regexp goo$
+————————+————————+
| google regexp ^goo | google regexp goo$ |
+————————+————————+
| 1 | 0 |
+————————+————————+
1 row in set (0.00 sec)
mysql select google regexp ^gle , google regexp gle$
+————————+————————+
| google regexp ^gle | google regexp gle$ |
+————————+————————+
| 0 | 1 |
+————————+————————+
1 row in set (0.00 sec)
mysql select fifi regexp ^fi , fifi regexp fi$ , fifi regexp ^fi$ , f
ifi regexp ^fifi$
+———————+———————+———————-+————
————+
| fifi regexp ^fi | fifi regexp fi$ | fifi regexp ^fi$ | fifi rege
xp ^fifi$ |
+———————+———————+———————-+————
————+
| 1 | 1 | 0 |
1 |
+———————+———————+———————-+————
————+
1 row in set (0.00 sec)
3. 系统信息函数
下面列举一些常用的系统信息函数:
user() 或 system_user() 返回当前登陆用户名
connection_id() 返回当前用户的连接 ID
database() 返回当前数据库名
version() 返回 MySQL 服务器的版本
mysql select user(), connection_id(), database(), version();
+—————-+—————–+————+——————+
| user() | connection_id() | database() | version() |
+—————-+—————–+————+——————+
| root@localhost | 2 | ggyy | 5.1.34-community |
+—————-+—————–+————+——————+
1 row in set (0.40 sec)
undefinedundefinedundefinedundefinedundefined
到此,关于“MySQL REGEXP 怎么使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注丸趣 TV 网站,丸趣 TV 小编会继续努力为大家带来更多实用的文章!