在SQL Server(2012年)我有數值的字段。該字段的類型爲int
。 假設db中的字段包含123456789
。 我在尋找這樣的:SQL Server的正則表達式
select * from table1 where field1 like '[1-9]{0,2}3456789'
我也曾嘗試'^[1-9]{0,2}$3456789'
兩者都不能正常工作。我究竟做錯了什麼?
在SQL Server(2012年)我有數值的字段。該字段的類型爲int
。 假設db中的字段包含123456789
。 我在尋找這樣的:SQL Server的正則表達式
select * from table1 where field1 like '[1-9]{0,2}3456789'
我也曾嘗試'^[1-9]{0,2}$3456789'
兩者都不能正常工作。我究竟做錯了什麼?
SQL服務器本身並不支持正則表達式。你需要爲此安裝一個CLR程序集。
的LIKE
模式語法不支持量詞所以不使用CLR的唯一選擇是擴大它。
where field1 like '3456789'
or field1 like '[1-9]3456789'
or field1 like '[1-9][1-9]3456789'
文本「不支持量詞」 ......這樣的恥辱:)謝謝你的幫助。 –
它支持^ $嗎? –
使用「or field1 like」幾次會傷害性能? –
哪個版本?不支持 –
的SQL Server 2012 –
正則表達式爲整數仍然可以用戶正則表達式搜索在SQL –