2014-01-07 55 views
6

我試圖執行兩個select語句到一個將數據泵入臨時表的查詢中。第一個查詢將有5列,而第二個查詢將只有一列。如何插入到SQL Server中的現有臨時表

首先可以通過以下方式實現:

Select a.ID AS [a], 
     b.ID AS [b], 
     c.ID AS [c] 
INTO #testingTemp 
FROM 
.... 

現在我有我的第二個查詢嘗試將數據泵進#testingTemp

Select z.ID AS [c] 
INTO #testingTemp 
FROM 
.... 

但我的問題是There is already an object named #testingTemp in the database

我試圖在互聯網上搜索解決方案,但大多數人只是在我的第一部分面臨的問題,但顯然沒有人試圖展開第二個查詢的臨時表?

+0

有什麼讓你把值插入到臨時表中只使用「選擇爲」法? – Kishore

+0

「選擇進入」從一個表中選擇並插入另一個表中創建它。你不能在已經存在的表上使用「select into」 – Melon

回答

13

將其更改爲插入語句。否則,您多次創建相同的臨時表,這是不允許的。

Insert into #testingTemp (a,b,c) 
Select a.ID AS [a], 
     b.ID AS [b], 
     c.ID AS [c] 
FROM 
5

第二個查詢應該只是一個普通的插入。

INSERT INTO #testingTemp 
    (a, 
    b, 
    c) 
    select etc. 

當你完成後,不要忘了放棄臨時表。

1

如果要插入的一切:

INSERT INTO #TempTableName 
SELECT * FROM MyTable