选择表:它是否可以将数据插入现有表?

时间:2018-01-30 15:04:44

标签: sql-server

我有一个名为public static IWebHost BuildWebHost(string[] args) => WebHost.CreateDefaultBuilder(args) .UseKestrel() .UseIISIntegration() .UseStartup<Startup>() .Build(); 的表:

test

此表名为LoadID name comment ------------------------ 1234 mobeen NULL

temp

我要做的是将LoadId comments -------------------------------- 1234 abc,abcdef,abcdefg 12345 abcdefgadsf 28366356 test,testing 表中的注释插入到temp表中的test列,其中第一个表的comment匹配第二个表中的LoadID

我试过这段代码

LoadID

但我得到的只是:

INSERT INTO [test] (comment)
    SELECT comments
    FROM temp 
    INNER JOIN [test] ON temp.LoadID = [test].LoadID
    WHERE [test].LoadID IS NOT NULL;

虽然我希望输出像这个表

LoadID  name    comment
-------------------------------------
1234    mobeen  NULL
NULL    NULL    abc,abcdef,abcdefg

2 个答案:

答案 0 :(得分:2)

很确定你想做这样的事情。请注意,检查LoadID不是NULL是没有意义的。你有一个内连接,所以它可能不是NULL。

update t
set comment = t.comments
from temp tmp
join test t on t.LoadID = tmp.LoadID
--where t.LoadID is not null

答案 1 :(得分:0)

第一个答案是正确的,但正在更新临时表。

var measureExtension =NOP_VIEWER.getExtension('Autodesk.Measure')
var factor = measureExtension.getCalibrationFactor()