@Ivan_R2

Как присвоить результаты SQL-запроса в другую колонку?

Добрый день!
У меня есть колонка test_field и есть запрос, который выводит результаты в виде
5f5f649adae56930429881.png

Сам запрос:
SELECT my_table.id AS id, sum(child.qty) AS all_child_qty
FROM my_table
LEFT OUTER JOIN my_table as child
   ON child.my_path LIKE (my_table.my_path || '%')
GROUP BY my_table.id

Подскажите, пожалуйста, каким образом я могу значения all_child_qty записать в соответствующие строки колонки test_field и сделать это в том же запросе, что и вычисление?
Всё находится в одной таблице my_table.
Спасибо
  • Вопрос задан
  • 668 просмотров
Решения вопроса 1
Melkij
@Melkij
PostgreSQL DBA
Переписать в коррелированный запрос:
update my_table set all_child_qty = (select sum(child.qty) from my_table child where child.my_path LIKE (my_table.my_path || '%'));


или update my_table set ... from (подзапрос) where ...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
UPDATE my_table
LEFT OUTER JOIN my_table as child
   ON child.my_path LIKE (my_table.my_path || '%')
SET all_child_qty = sum(child.qty)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы