您的位置:首页 > 数据库

自定义SQL函数 实现SPlit字符截取功能

2016-01-22 00:00 405 查看
摘要: 自定义SQL函数 实现SPlit字符截取功能

CREATE FUNCTION [dbo].[SplitString]
(
@Expression nvarchar(4000),--要拆分的字符串
@splitchar nvarchar (100),--拆分字符
@n int --要得到已拆分的返回字符串的位置
)
RETURNS nvarchar(4000)
AS
BEGIN
-- Declare the return variable here
DECLARE @p int
set @p=CHARINDEX(@splitchar,@Expression)
if @p>0
begin
set @p=@p+LEN(@splitchar)-1
end
declare @i int
set @i=1
while @i<@n
begin
set @i=@i+1
set @Expression=SUBSTRING(@Expression,@p+1,LEN(@Expression)-@p)
set @p=CHARINDEX(@splitchar,@Expression)
if @p>0
begin
set @p=@p+LEN(@splitchar)-1
end
else
begin
break
end
end
declare @s Nvarchar(1000)
if @p=0 AND @i=@n
begin
set @s=@Expression
end
else
if @i=@n
begin
set @s=SUBSTRING(@Expression,1,@p-LEN(@splitchar))
end return @s
end

-- Add the T-SQL statements to compute the return value here

GO
函数的引用:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: