2

SQL Server (2012) には、数値のフィールドがあります。フィールドのタイプはintです。データベースのフィールドに が含まれているとしましょう123456789。私はこのように検索しています:

select * from table1 where field1 like '[1-9]{0,2}3456789'

私も試してみました'^[1-9]{0,2}$3456789'

どちらも機能していません。私は何を間違っていますか?

4

1 に答える 1

6

SQL Server は正規表現をネイティブにサポートしていません。これには CLR アセンブリをインストールする必要があります。

LIKEパターン構文は量指定子をサポートしていないため、CLR を使用しない唯一の代替手段は、それを展開することです。

where field1 like '3456789' 
 or  field1 like '[1-9]3456789'  
 or  field1 like '[1-9][1-9]3456789' 
于 2012-11-18T10:46:40.850 に答える