Обновление SQL из другого выбора - PullRequest
0 голосов
/ 06 октября 2011

Я бы хотел обновить таблицу (Oracle) по результатам другого (слишком длинного и сложного) запроса.

Для простоты Query1 - мой сложный запрос, который возвращает что-то вроде этого:

 Item_ID | Item_Data
 --------------------
 10          XXX
 20          ZZZZ
 30          SSSS

Я хочу сделать это

 UPDATE MyTable SET MyTable.MyData = Query1.Item_Data where MyTable.MyID = Query1.Item_ID

Как мне этого добиться? Спасибо

1 Ответ

2 голосов
/ 06 октября 2011

Проверьте предложение MERGE INTO.Я не могу проверить это прямо сейчас, но должно быть что-то вроде этого:

MERGE INTO mytable mt
USING (your complex query here) cc
  ON mt.myid = cc.item_id
WHEN MATCHED THEN UPDATE SET mt.mydata = cc.item_data
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...