删除字符串尾数连续为零的自定义函数
2013-11-20 15:27 dsding 阅读(293) 评论(0) 收藏 举报最近工作中遇到一个问题,需要将一个varchar字段尾数连续为零的部分删除掉。SQL SERVER系统函数实现不了,只有想办法自定义函数来实现了。 函数代码如下:
CREATE FUNCTION [dbo].[zerosc](@obj Nvarchar(255))
returns Nvarchar(255)
AS
BEGIN
declare @i int,@K int,@j Nvarchar(255)
select @j=@obj
select @i=0, @K=LEN(@j)
IF CHARINDEX('.',@j)=0
return (@j)
ELSE
WHILE(SUBSTRING(@j,@K,1) = '0')
BEGIN
SET @i=@i+1
SET @K=@K-1
END
SET @j=LEFT(@j,len(@j)-@i)
IF CHARINDEX('.',@j)=LEN(@j)
begin
set @j=left(@j,len(@j)-1)
end
return(@j)
END
浙公网安备 33010602011771号