Я пытаюсь написать пару запросов в MySQL, которые должны выполнить следующее: Запрос здесь вернет все записи, которые соответствуют caseid = 702 с соединением из другой таблицы.
SELECT db.tab1.id as id
FROM db.tab1 JOIN db.tab2
ON db.tab1.caseid = db.tab2.padid
WHERE db.tab1.caseid=702
Я хочу взять вывод этого запроса и вставить в качестве массива в оператор UPDATE для другой таблицы t3.
Как мне это сделать в MySQL? Я прочитал немного ресурсов в Cursor или мне нужно написать хранимую процедуру для него?
Спасибо
Как насчет:
update table_a set col1 = value1
where id in (
SELECT db.tab1.id as id
FROM db.tab1 JOIN db.tab2
ON db.tab1.caseid = db.tab2.padid
WHERE db.tab1.caseid=702
);
Второй раунд: я позволил вам реорганизовать ваш запрос. Я надеюсь, что это помогает:
update evou e
set status = 1234
where vid in (
SELECT vid
FROM pay p
where p.resoncode = 222
and p.vid = e.vid
)
and e.status=70006
Обновление из этого соединения:
update a set a.yourcolumn=a.newcolumnvalue
from t3 a join (
SELECT db.tab1.id as id
FROM db.tab1 JOIN db.tab2
ON db.tab1.caseid = db.tab2.padid
WHERE db.tab1.caseid=702)b
on a.id=b.id
tab1
и tab2
в ОБНОВЛЕНИИ