如何检测一个string是否包含至less一个数字?
如何检测一个string是否包含SQL Server 2005中的一个数字(数字)?
用这个:
SELECT * FROM Table WHERE Column LIKE '%[0-9]%'
MSDN – LIKE(Transact-SQL)
DECLARE @str AS VARCHAR(50) SET @str = 'PONIES!!...pon1es!!...p0n1es!!' IF PATINDEX('%[0-9]%', @str) > 0 PRINT 'YES, The string has numbers' ELSE PRINT 'NO, The string does not have numbers'
最简单的方法是使用LIKE
:
SELECT CASE WHEN 'FDAJLK' LIKE '%[0-9]%' THEN 'True' ELSE 'False' END; -- False SELECT CASE WHEN 'FDAJ1K' LIKE '%[0-9]%' THEN 'True' ELSE 'False' END; -- True
- 您可以使用基于CLR的UDF或使用search列上的所有数字执行CONTAINS查询。