Столбец ОБНОВЛЕНИЕ Астры не существует

Я пытаюсь UPDATE значения столбца в одной таблице на основе количества значений в исходной таблице. Я использую Teradata Aster.

Когда я отправляю следующий коррелированный подзапрос, я получаю сообщение об ошибке, в котором говорится, что столбец не существует, несмотря на проверку его существования.

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

Я чувствую, что в Астер есть что-то особенное, но я не уверен.

0 ответов

Вы можете использовать приведенный ниже запрос для простого обновления столбца из другой таблицы.

  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;

Оба запроса отлично работают для меня.

Другие вопросы по тегам