Declare @Status int
select @Status = (case when datepart(dw,@date) in (1,7) then 1 else 0 end)  --周末为1,平日为0if(@Status = 0)
select Table.* into #TempTable where Status in (1,2)if(@Status = 1)
select Table.* into #TempTable where Status in (3,4)报错:
数据库中已存在名为 '#TempTable' 的对象。请大家帮我修改下语句,达到我的预期目的

解决方案 »

  1.   

    Declare @Status int
    select @Status = (case when datepart(dw,@date) in (1,7) then 1 else 0 end)  --周末为1,平日为0if(@Status = 0)
    select Table.* into #TempTable where Status in (1,2)if(@Status = 1)
    insert #Temptable select Table.* where Status in (3,4)
      

  2.   

    drop table #TempTable 
    Declare @Status int
    select @Status = (case when datepart(dw,@date) in (1,7) then 1 else 0 end)  --周末为1,平日为0if(@Status = 0)
    select Table.* into #TempTable where Status in (1,2)if(@Status = 1)
    select Table.* into #TempTable where Status in (3,4)
      

  3.   

    请删除#temptable表,因为在第一次执行时已经创建了,如果此查询窗口不断开,那么#temptable表会一直存在。
    drop table #temptable
      

  4.   

    Declare @Status int
    select @Status = (case when datepart(dw,@date) in (1,7) then 1 else 0 end)  --周末为1,平日为0if(@Status = 0)
    select Table.* into #TempTable where Status in (1,2)if(@Status = 1)
        insert #Temptable select Table.* where Status in (3,4)
      

  5.   

    放到存储过程里,执行没有问题,不用修改。如果在同一查询窗口反复测试这段代码的话,必须手动drop掉。
      

  6.   

    如果不是放入存储,用完一次DROP一次