2012-10-23 70 views
2

我需要從連接選擇命令插入多個返回記錄到臨時表。我使用了下面的命令。 select語句返回兩個值,但是當我使用下面的命令插入時,(#TempTableValue)臨時表沒有任何內容。所有其他字段聲明都可以,並且加入select命令正確返回值。從連接臨時表插入多條記錄

INSERT into #TempTableValue DEFAULT values 
SELECT #temp1.id,#temp1.DestFieldName,#temp2.FieldValues 
FROM #temp2 
INNER JOIN #temp1 
ON #temp2.FieldName=#temp1.SourceFieldName 

select * from #TempTableValue 

但是最後的select命令返回所有的空值。這裏有什麼問題?

+0

請您提供#TempTableValue表創建語句?我想看看爲表格設置了哪些默認值 –

回答

1

嘗試如下除去DEFAULT value

INSERT into #TempTableValue 
SELECT #temp1.id,#temp1.DestFieldName,#temp2.FieldValues 
FROM #temp2 
INNER JOIN #temp1 ON #temp2.FieldName=#temp1.SourceFieldName 

documentation

DEFAULT VALUES

強制新行包含每個 列定義的默認值。

1

好吧我想我知道這裏有什麼問題。 如果使用Insert Into #TempTableValue您必須先創建臨時表。 要直接插入您的選擇,您可以使用此

Select #temp1.id,#temp1.DestFieldName,#temp2.FieldValues Into #TempTableValue 
FROM #temp2 
INNER JOIN #temp1 
ON #temp2.FieldName=#temp1.SourceFieldName