多值字符窜参数的处理
--外部参数
declare @hotelIDs nvarchar(4000)
set @hotelIDs = '1,2,3,4,5,6,7,8,9,'
--内部参数
declare @hotelid nvarchar(8), @length int, @index int
create table #tmp(id nvarchar(8));
set @length = len(@hotelIDs) - len(replace(@hotelIDs,',',''));
set @index = 1;
while @index <= @length
begin
set @hotelid = '';
set @hotelid = left(@hotelIDs,charindex(',',@hotelIDs)-1)
set @hotelIDs = right(@hotelIDs,len(@hotelIDs) - charindex(',',@hotelIDs))
set @index = @index + 1
insert into #tmp values (@hotelid)
end
select * from #tmp
drop table #tmp
declare @hotelIDs nvarchar(4000)
set @hotelIDs = '1,2,3,4,5,6,7,8,9,'
--内部参数
declare @hotelid nvarchar(8), @length int, @index int
create table #tmp(id nvarchar(8));
set @length = len(@hotelIDs) - len(replace(@hotelIDs,',',''));
set @index = 1;
while @index <= @length
begin
set @hotelid = '';
set @hotelid = left(@hotelIDs,charindex(',',@hotelIDs)-1)
set @hotelIDs = right(@hotelIDs,len(@hotelIDs) - charindex(',',@hotelIDs))
set @index = @index + 1
insert into #tmp values (@hotelid)
end
select * from #tmp
drop table #tmp