CREATE TEMPORARY TABLE temp (select t2.field2, t2.field3 from table2 t2 where t2.field3="somevalue"); update table1 t1, temp t set t1.field3=t.field3 where t1.field2=t.field2;