sql - 通过连接临时表插入多条记录

标签 sql sql-server stored-procedures

我需要将连接选择命令的多个返回记录插入到临时表中。我使用了下面的命令。 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

但是最后一个选择命令返回所有 Null 值。这里有什么问题吗?

最佳答案

尝试删除默认值,如下所示:

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

来自 documentation :

DEFAULT VALUES

Forces the new row to contain the default values defined for each column.

关于sql - 通过连接临时表插入多条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13029849/

相关文章:

mysql - 如何创建调用MySQL中存储函数的 View ?

php - 如何从 Laravel 执行存储过程

sql - CASE WHEN NULL 在 SQLite 中产生错误结果?

mysql - 从数据库中选择多个计数

sql - 将可变数量的记录合并为单个记录

sql-server - CROSS APPLY 问题 - 过滤多对一关系

sql - 通过将 ROW_NUMBER 与另一个表匹配来更新?

MySQL 对唯一值的约束

c# - 数据集更新与 SQL 查询

sql - 将空值排序在最后而不是最前面