sql >> Databasteknik >  >> RDS >> Mysql

Hur uppdaterar man två tabeller i ett uttalande?

Förutsatt att varje ID visas i båda tabellerna (helst bara en gång):

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

Uppdatering:att helt enkelt använda left joins istället för inner joins gör att detta fungerar även för ID som bara finns i en tabell - den otillämpliga set-satsen verkar bara ha hoppats över; Jag borde tydligen ha provat det tidigare.



  1. SQLite Välj

  2. Undvik dubbletter i INSERT INTO SELECT-frågan i SQL Server

  3. Autoslutför i MySQL under Windows

  4. Hur vet man vilken partition som kommer att användas i Postgres hashpartitionering?