Aster UPDATE列不存在

问题描述 投票:0回答:1

我试图根据源表中的值计数UPDATE一个表中的列的值。我正在使用Teradata Aster。

当我提交以下相关子查询时,我收到一个错误,指出该列不存在,尽管验证它确实存在。

UPDATE table2
SET column =
(
SELECT count(*)
FROM table1
WHERE table2.column = table1.column
)

我觉得Aster有一些特殊的东西,但我不确定。

sql teradata correlated-subquery teradata-aster aster
1个回答
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;

这两个查询对我来说都很好。

© www.soinside.com 2019 - 2024. All rights reserved.