如何检测一个字符串是否至少包含一个数字?
答
答
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'
+0
为什么PATINDEX,而不是一个简单的LIKE? – gbn 2010-04-01 10:53:20
+0
Lol ponies ...... – Tsaukpaetra 2015-02-05 18:19:22
答
- 你可以使用基于CLR的UDF或做包含了使用上的搜索栏中所有数字查询。
答
最简单的方法是使用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
你的意思是一个字符串,或大于或等于号一个指定的值? – 2010-04-01 07:34:22