34,837
社区成员




--验证传进来的值是小数格式
DECLARE @Input varchar(20)
SET @Input = '8.'
IF @Input LIKE '%.%'
AND @Input NOT LIKE '%.%.%'
AND REPLACE(@Input,'.','') NOT LIKE '%[^0-9]%'
BEGIN
--验证成功
SELECT CAST(@Input AS decimal(18,9))
END
declare @num nvarchar(20)
set @num = 'd'
select count(1) where isnumeric(@num) = 1 and charindex('.',@num) between 2 and len(@num) - 1
/*
返回0 不是小数
返回1 是小数
*/