首页 MySql MySql REGEXP匹配两个逗号分隔的字符串

MySql REGEXP匹配两个逗号分隔的字符串

我有一个包含以下值的表:id | value | ———————– 1 | 1,2,5,8,12,20 | 2 | 11,25,26,28 | ———————– 现在我想搜索一些以逗号分隔的ID,例如来自上面的值列的1,3,6,7,11,

我有一个包含以下值的表:

id    |    value      |
-----------------------
1     | 1,2,5,8,12,20 |    
2     | 11,25,26,28   |    
-----------------------

现在我想搜索一些以逗号分隔的ID,例如来自上面的值列的’1,3,6,7,11′,例如

SELECT id FROM tbl_name  
WHERE value REGEXP '*some reg exp goes here containing 1,11*'
LIMIT 1,0;

SELECT id FROM tbl_name  
WHERE value REGEXP '*some reg exp goes here containing 3,27,15*'
LIMIT 1,0;

第一个查询应该返回1,而第二个应该返回NULL

我是新手,正规表达可以任何人帮助.谢谢

最佳答案

REGEXP '(^|,)(1|3|6|7|11)(,|$)'

将匹配包含序列1,11的一个数字的所有值.

您不应使用一列来保存多个值.规范化数据!

编辑回答

本文来自网络,不代表青岛站长网立场。转载请注明出处: https://www.0532zz.com/html/shujuku/mysql/20210111/15300.html
上一篇
下一篇

作者: dawei

【声明】:青岛站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

返回顶部