Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.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
Sql server MS SQL正则表达式精确查找6个数字_Sql Server_Regex - Fatal编程技术网

Sql server MS SQL正则表达式精确查找6个数字

Sql server MS SQL正则表达式精确查找6个数字,sql-server,regex,Sql Server,Regex,我试图在MS SQL数据库列中搜索6个数字。列中的数据是字符串示例:ab01234555cd0122abc987654efg 使用正则表达式:[0-9]{6} 结果是:012345和987654 以下是我当前的MS SQL代码: 从搜索引擎优化(如“%[0-9]{6}%”的用户中选择* {6}不起作用 如何使用正则表达式限定符匹配字符数?SQL Server实际上没有正则表达式功能。您需要将该模式重复六次: SELECT * FROM users WHERE seo LIKE '%[0-9]

我试图在MS SQL数据库列中搜索6个数字。列中的数据是字符串示例:ab01234555cd0122abc987654efg

使用正则表达式:[0-9]{6}

结果是:012345987654

以下是我当前的MS SQL代码:

从搜索引擎优化(如“%[0-9]{6}%”的用户中选择*

{6}不起作用


如何使用正则表达式限定符匹配字符数?

SQL Server实际上没有正则表达式功能。您需要将该模式重复六次:

SELECT * FROM users WHERE seo LIKE '%[0-9][0-9][0-9][0-9][0-9][0-9]%'

SQL Server
类似,它不处理正则表达式,但可以进行模式匹配。由于不支持regexp,因此不能执行类似于
[0-9]{6}
的操作。相反,您需要重复您的模式,如下所示:
[0-9][0-9][0-9][0-9][0-9][0-9][0-9]

所以你的问题是:

SELECT * FROM users WHERE seo LIKE '%[0-9][0-9][0-9][0-9][0-9][0-9]%';