Ita*_*y.B 2 regex sql sql-server sql-server-2012
在SQL Server(2012)中,我有一个带有数值的字段.该字段属于类型int.假设db中的字段包含123456789.我这样搜索:
select * from table1 where field1 like '[1-9]{0,2}3456789'
Run Code Online (Sandbox Code Playgroud)
我也试过了 '^[1-9]{0,2}$3456789'
两者都不起作用.我究竟做错了什么?
SQL Server本身不支持正则表达式.您需要为此安装CLR程序集.
该LIKE模式语法不支持量词所以不使用CLR的唯一选择是扩大它.
where field1 like '3456789'
or field1 like '[1-9]3456789'
or field1 like '[1-9][1-9]3456789'
Run Code Online (Sandbox Code Playgroud)