【发布时间】:2017-09-16 20:39:38
【问题描述】:
我有两个表 A(i,j,k) 和 B(m,n)。
我想通过从表 A 中获取 sum(j) 来更新 B 表的“m”列。是否可以在 Vertica 中执行此操作?
以下代码可用于 Teradata,但 Vertica 是否具有这种灵活性?
Update B from (select sum(j) as m from A)a1 set m=a1.m;
【问题讨论】:
-
这是一个稍微奇怪的语法,User3503711,所以我试图弄清楚你期望它做什么。
UPDATE <table> FROM ...不是标准 SQL 语法。看起来您希望表B中所有行中的列m假定您在表A中SUM(j)时获得的值。对吗? -
这是一种 Teradata SQL 语法。 [这里] (stackoverflow.com/questions/10987152/…) 发布了类似的语法。是的,这就是我想要做的。表 A 中的 Sum(j) 将被复制到表 B 的 m 列。 - @marcothesane
标签: sql database sql-update vertica