插入到已连接的表中

时间:2019-06-04 20:00:58

标签: sql postgresql

我想在一条SQL指令中通过 JOIN 创建的两个表的组合上添加一些寄存器。

有可能吗?我该怎么办? 如果我需要“ upsert”操作,而不是简单的INSERT,怎么办?

这是PostgreSQL服务器(如果有关系...)。我的第一种方法是尝试使用 WITH..AS ,该方法无济于事:

var res = list.Where(x => x.Age == 61)
              .Select(t => t)
              .DefaultIfEmpty(list.First(x => x.Threshold == list.Max(t => t.Threshold)))
              .SingleOrDefault();

结果,出现声音错误:“ tableX”不存在

1 个答案:

答案 0 :(得分:0)

我严重怀疑您可以这样做。如果您提前创建表格,则可以执行以下操作:

INSERT INTO tableX 
SELECT fruits.apple, pets.dog
    FROM fruits fr JOIN pets pt on fr.key = pt.key

CREATE TABLE tableX (field1 ..whatever data types..., field2) 
SELECT fruits.apple, pets.dog
    FROM fruits fr JOIN pets pt on fr.key = pt.key