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