我需要将一个join select命令中的多个返回记录插入到临时表中。我使用了以下命令。 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命令返回所有Null值。这有什么问题?
答案 0 :(得分:1)
尝试删除DEFAULT value
,如下所示:
INSERT into #TempTableValue
SELECT #temp1.id,#temp1.DestFieldName,#temp2.FieldValues
FROM #temp2
INNER JOIN #temp1 ON #temp2.FieldName=#temp1.SourceFieldName
默认值
强制新行包含为每个定义的默认值 列。
答案 1 :(得分:1)
好吧我想我知道这里有什么问题。 如果使用Insert Into #TempTableValue,则必须首先创建临时表。 要直接插入您的选择,您可以使用此
Select #temp1.id,#temp1.DestFieldName,#temp2.FieldValues Into #TempTableValue
FROM #temp2
INNER JOIN #temp1
ON #temp2.FieldName=#temp1.SourceFieldName