Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 带有数字列表的函数REGEXP_Mysql_Sql_Regex - Fatal编程技术网

Mysql 带有数字列表的函数REGEXP

Mysql 带有数字列表的函数REGEXP,mysql,sql,regex,Mysql,Sql,Regex,我有几个逗号分隔的数字列表。我需要用sql查询匹配特定的行。我想为此构建正确的RegExp,我需要您的帮助 具有逗号分隔的数字列表的行示例: 1,8,33,44 1,8,44 1,8,22,33 8,22,44 1,88,44 1,22,44,66 我需要匹配只包含数字8和44的行 我的sql查询如下所示: SELECT id FROM my_list WHERE id_list REGEXP '^[0-9,]8,[0-9,]44[0-9,]$' 提前谢谢 试试这个: SELECT id

我有几个逗号分隔的数字列表。我需要用sql查询匹配特定的行。我想为此构建正确的RegExp,我需要您的帮助

具有逗号分隔的数字列表的行示例:

  • 1,8,33,44
  • 1,8,44
  • 1,8,22,33
  • 8,22,44
  • 1,88,44
  • 1,22,44,66
我需要匹配只包含数字8和44的行

我的sql查询如下所示:

SELECT id FROM my_list WHERE id_list REGEXP '^[0-9,]8,[0-9,]44[0-9,]$'
提前谢谢

试试这个:

SELECT id FROM my_list WHERE CONCAT(",",id_list,",") REGEXP ',8,|,44,'
使用功能:

SELECT id FROM my_list WHERE FIND_IN_SET('8', id_list) AND FIND_IN_SET('44', id_list)

您不必为此使用mysql。这不是万灵药。参考这个是的,它比正则表达式好得多。