2012年5月1日火曜日
SQLServer 2005 split 関数 独自版
********* 以下をそのまま実行 **********
create function [dbo].[split](@str as varchar(1000), @kugiri as char(1), @idx as int)
returns varchar(1000)
as
begin
declare @result varchar(1000)
declare @loop int
set @loop = 0
while (@loop < @idx)
begin
select @result = case when charindex(@kugiri, rtrim(@str)) > 0 then substring(rtrim(@str), 1, charindex(@kugiri, rtrim(@str)) -1) else rtrim(@str) end
select @str = case when charindex(@kugiri, @str) > 0 then substring(@str, charindex(@kugiri, @str)+1, 1000) else null end
set @loop = @loop + 1;
end
return @result
end
--使用例
-- select dbo.split('aaazbbbzccc', 'z', 2)
--結果
-- bbb
********* 以上、ここまで **********
元ネタ
http://blog.livedoor.jp/hashikure3/archives/20478.html
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿