检查变量是否包含SQL Server中的任何非数字数字

Kin*_*ngs 7 sql sql-server-2000

我有一个如下查询: -

DECLARE @rptID VARCHAR(8)
SET @rptID = (SELECT reportID FROM Reports)
Run Code Online (Sandbox Code Playgroud)

一般来说,@ rptID包含数字,如'00001234'等.但有没有办法验证变量@rptID是否包含任何非数字值.

对于前者

IF (@rptID contains non-numeric value)
            THEN throw Error
Run Code Online (Sandbox Code Playgroud)

gbn*_*gbn 18

检查不在0到9范围内的任何字符

^ 不在LIKE表达式中

IF @rptID LIKE '%[^0-9]%'
   --throw error 
Run Code Online (Sandbox Code Playgroud)

  • 你的字符串缺少结尾' (2认同)