MS SQL自定义函数判断是否正整数

可以写一个函数: 主要是使用正则来判断。另外输入字符是空的话,使用"-"来替换。

 

CREATE FUNCTION [dbo].[svf_NonNegativeInteger] (
  @val NVARCHAR(4000)
) RETURNS BIT
AS
BEGIN
   DECLARE
    @rtv BIT = 1

   SET @val = ISNULL(LTRIM(RTRIM(@val)), N'-')

   IF @val LIKE '%[^0-9]%' OR @val = N''
      SET @rtv = 0
   ELSE
      SET @rtv = 1

   RETURN @rtv
END
Source Code

 

实例说明:

 

posted @ 2018-11-19 08:09  Insus.NET  阅读(1557)  评论(0编辑  收藏  举报