将数据从一个表复制到另一个表,第二个表有两个额外的列,必须插入数据。我知道我必须使用insert insert语句,并可能将其嵌套,也可能使用@作为变量,或者我的知识是有限的,我需要在一个查询中这样做。不可能有空的
我当前不起作用的代码:
INSERT INTO SampleExtraTable_2 (SampleID, SampleName, SampleEmail)
SELECT *
(
SELECT Extra1,Extra2
FROM SampleExtraTable_2
Values('b','r');
)
FROM SampleTable_1
WHERE 1 = 1
SampleExtraTable_2有以下字段: char(10),(SampleID,SampleName,SampleEmail,Extra1,Extra2)
SampleTable_1 2有相同的字段,除了附加项和定义量都是char(10)。
发布于 2022-02-08 00:00:11
您正在尝试插入空值。
SELECT Extra1,Extra2
FROM SampleExtraTable_2
您的内部选择查询将返回NULL。
您可以将'dta‘、'dta2’值作为字符串插入到新表中,如下所示。(如果它们是常数的话)
INSERT INTO SampleExtraTable_2 (SampleID, SampleName, SampleEmail, Extra1, Extra2)
SELECT SampleID, SampleName, SampleEmail, 'dta', 'dta2'
FROM SampleTable_1
https://stackoverflow.com/questions/71030043
复制相似问题