php - MySQL查询支持正则数字吗?
黄舟
黄舟 2017-04-10 14:41:59
[PHP讨论组]

请问大家mysql查寻如何可以通过正则来查询一个特定的数字啊?
例如我想查询字段中带有115数字的列,却想排除1115或者11555555这种,mysql支持这种查询吗?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(3)
大家讲道理

对比着mysql手册写了一下, 写的很丑, 没办法, 没找到\D, (|[^0-9X])也给我报错, 唉. mysql5.5.24

mysql> select '115' regexp '^115$|^115[^0-9X]|[^0-9X]115$|[^0-9X]115[^0-9X]' res
ult;
+--------+
| result |
+--------+
|      1 |
+--------+
1 row in set (0.00 sec)

mysql> select '1150' regexp '^115$|^115[^0-9X]|[^0-9X]115$|[^0-9X]115[^0-9X]' re
sult;
+--------+
| result |
+--------+
|      0 |
+--------+
1 row in set (0.00 sec)

mysql> select '11150' regexp '^115$|^115[^0-9X]|[^0-9X]115$|[^0-9X]115[^0-9X]' r
esult;
+--------+
| result |
+--------+
|      0 |
+--------+
1 row in set (0.00 sec)

mysql> select 'a115a' regexp '^115$|^115[^0-9X]|[^0-9X]115$|[^0-9X]115[^0-9X]' r
esult;
+--------+
| result |
+--------+
|      1 |
+--------+
1 row in set (0.00 sec)
天蓬老师

不支持,效率太低,需要自己处理。

PHP中文网

支持,不过效率不高。
SELECT mm,mm REGEXP '.星号[^1]115[^5].星号$' FROM test.a;

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号