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

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

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的一个数字的所有值.

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

编辑回答

dawei

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