逗號轉table
create function [dbo].[function_string_to_table]
(
@string varchar(500),
@delimiter char(1)
)
returns @output TABLE (
data varchar(256)
)
begin
declare @start INT,@end int
select @start=1,@end=charindex(@delimiter,@string)
while @start<len(@string) +1 begin
if @end =0
set @end =len(@string)+1
insert into @output (data)
values (substring(@string,@start,@end-@start))
set @start=@end+1
set @end=charindex(@delimiter,@string,@start)
end
return
end
select * from dbo.function_string_to_table('key1,key2,key3,key4,key5,',',')
(
@string varchar(500),
@delimiter char(1)
)
returns @output TABLE (
data varchar(256)
)
begin
declare @start INT,@end int
select @start=1,@end=charindex(@delimiter,@string)
while @start<len(@string) +1 begin
if @end =0
set @end =len(@string)+1
insert into @output (data)
values (substring(@string,@start,@end-@start))
set @start=@end+1
set @end=charindex(@delimiter,@string,@start)
end
return
end
select * from dbo.function_string_to_table('key1,key2,key3,key4,key5,',',')