我需要使用循环多次SELECT INTO创建一个临时表,但我无法这样做,因为在使用SELECT INTO创建的表结束循环后不能简单地删除该表,因为在同一批处理中无法删除并重新创建表。那么,在存储过程中如何删除表并重新创建它?是否可以在不使用临时表的情况下完成此操作?以下是我实际使用临时表的代码片段,其目的是进行透视算法:
WHILE @offset<@NumDays BEGIN
SELECT
bg.*, j.ID, j.time, j.Status
INTO #TEMP1
FROM #TEMP2 AS bg
left outer join PersonSchedule j on bg.PersonID = j.PersonID and
j.TimeSlotDateTime = @StartDate + @offset
DROP TABLE #TEMP2;
SELECT * INTO #TEMP2 FROM #TEMP1
DROP TABLE #TEMP1
SET @offset = @offset + 1
END
#TEMP2
是如何定义的? - binki