SQL Server : How to test if a string has only digit characters

后端 未结 7 1588
误落风尘
误落风尘 2021-02-05 00:59

I am working in SQL Server 2008. I am trying to test whether a string (varchar) has only digit characters (0-9). I know that the IS_NUMERIC function can give spurious results.

7条回答
  •  醉梦人生
    2021-02-05 01:28

    DECLARE @x int=1
    declare @exit bit=1
    WHILE @x<=len('123c') AND @exit=1
    BEGIN
    IF ascii(SUBSTRING('123c',@x,1)) BETWEEN 48 AND 57
    BEGIN
    set @x=@x+1
    END
    ELSE
    BEGIN
    SET @exit=0
    PRINT 'string is not all numeric  -:('
    END
    END
    

提交回复
热议问题