Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie aktualisiere ich zwei Tabellen in einer Anweisung?

Angenommen, jede ID erscheint in beiden Tabellen (idealerweise nur einmal):

update tmpList inner join table1 using (id) inner join table2 using (id)
    set table1.ts = tmpList.ts_value, table2.ts=tmpList.ts_value;

Update:Durch die einfache Verwendung von Left Joins anstelle von Inner Joins funktioniert dies sogar für IDs, die sich nur in einer Tabelle befinden - die nicht anwendbare Set-Klausel scheint nur übersprungen zu werden. Ich hätte es anscheinend früher versuchen sollen.