Ошибка. Что я делаю неправильно в этом sql-запросе?

Я пытаюсь обновить значения в таблице из той же таблицы, используя определенное условие, но оно не выполняется.

Я пробовал это, используя "WITH"

update my_table as res1
set res1.my_column = (select res2.my_column from my_table as res2
                      where res2.parent_id is null and res2.is_company = true)
where res1.parent_id=res2.id;
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
0
67
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Просто попробуйте SQL ниже:

update my_table as res1 set my_column = res2.my_column from my_table res2 where res1.parent_id = res2.id and res2.partner_id is null and res2.is_company;

привет .. спасибо за ваш ответ .... я попробовал это с помощью вашего sql-запроса .. он возвращает ту же ошибку, что и «отсутствует запись FROM-clause для таблицы «res2», которую я получил из моего запроса

Nick Dhiman 11.06.2019 10:25

Вы не указываете тип SQL-сервера, но обычно UPDATE из SELECT использует определенный синтаксис:

Как выполнить ОБНОВЛЕНИЕ из SELECT в SQL Server?

спасибо за ответ извините, я забыл упомянуть .. сервер postgresql

Nick Dhiman 11.06.2019 10:23

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