文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

MySQL REGEXP怎么使用

2024-04-02 19:55

关注

这篇文章主要介绍“MySQL REGEXP怎么使用”,在日常操作中,相信很多人在MySQL REGEXP怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL REGEXP怎么使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

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怎么使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯