MySql REGEXP匹配两个逗号分隔的字符串 [英] MySql REGEXP to match two comma separated strings
本文介绍了MySql REGEXP匹配两个逗号分隔的字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个包含以下值的表:
I have a table containing following values :
id | value |
-----------------------
1 | 1,2,5,8,12,20 |
2 | 11,25,26,28 |
-----------------------
现在我要搜索一些用逗号分隔的ID,例如例如,高于值列中的"1、3、6、7、11"
now I want to search some comma separated IDs e.g. '1,3,6,7,11' from above value column e.g.
SELECT id FROM tbl_name
WHERE value REGEXP '*some reg exp goes here containing 1,3,6,7,11*'
LIMIT 1,0;
SELECT id FROM tbl_name
WHERE value REGEXP '*some reg exp goes here containing 3,6,27,15*'
LIMIT 1,0;
第一个查询上方应返回1,而第二个查询应返回NULL
above 1st query should return 1 while the 2nd should return NULL
我是新来的正则表达式,任何人都可以帮忙.谢谢
I am new with regular expressions can anyone help. Thanks
推荐答案
REGEXP '(^|,)(1|3|6|7|11)(,|$)'
将匹配包含一个数字1,3,6,7,11
的所有值.
Will match all values containing one number of the sequence 1,3,6,7,11
.
您不应使用一列来保存多个值.规范化数据!
You should not use one column to save several values. Normalize data!
修改后的答案
这篇关于MySql REGEXP匹配两个逗号分隔的字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文