我想在一条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”不存在。
答案 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