您需要动态生成该语句,并使用EXECUTE或sp_executesql执行该语句。
DECLARE @i INT , @l INT , @desc CHAr(50)SET @l = 1 SET @i = 20WHILE ( @l <= @i ) BEGIN EXEC ('SELECT ''Test'' AS Test'+@l) SET @l = @l + 1END
进入动态SQL领域时的推荐阅读:动态SQL的诅咒和祝福
改用sp_executesql:
DECLARE @i INT , @l INT , @desc CHAr(50), @SQL NVARCHAr(100)SET @l = 1 SET @i = 20WHILE ( @l <= @i ) BEGIN SET @SQL = N'SELECT ''Test'' AS Test'+CAST(@l AS NVARCHAr(10)) EXEC sp_executesql @SQL SET @l = @l + 1END
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)