我正在尝试根据源表中的值计数UPDATE
在一个表中的列的值。我正在使用Teradata Aster。
当我提交以下相关子查询时,尽管验证了该列是否存在,但我仍然收到错误消息,指出该列不存在。
UPDATE table2
SET column =
(
SELECT count(*)
FROM table1
WHERE table2.column = table1.column
)
我觉得Aster有一些特质,但我不确定。
答案 0 :(得分:1)
您可以使用以下查询从另一个表中进行简单的列更新。
UPDATE table1
SET col2 = table2.col2
FROM table2
WHERE table1.col1 = table2.col1;
对于更新查询中的汇总功能,可以在下面的查询中使用。
UPDATE table1
SET col2 = table2.col2
FROM (select col1, count(col2) col2 from table2 group by col1 ) table2
WHERE table1.col1 = table2.col1;
这两个查询对我来说都很好。