DECLARE @abc varchar(50) SET @abc='2008,2009,2011'; DECLARE @temp varchar(50) DECLARE @sign varchar(50) DECLARE @run bit --继续循环的标志 SET @run=1; while(@run=1) begin IF(len(@abc)>0) --如果表名集合还不为空,则进行一下操作 BEGIN SET @sign=charindex(',',@abc); IF(@sign=0) --如果没有找到',' 证明 @abc中只有一个年份 BEGIN SET @temp=@abc; SET @run=0; end ELSE BEGIN SET @temp=substring(@abc,1,@sign-1) --表名 SET @abc=substring(@abc,@sign+1,len(@abc)) --把存储表名的串的长度缩短至后一个 end PRINT @temp; end end