以下写法针对MySQL。
虽然写子查询也是可以实现的,不过当然应该选择一种更有效率的方式:
update table1 t1 left join table2 t2 on t1.key=t2.key set
t1.field1=t2.field1,
t1.field2=t2.field2,
t1.field3=t2.field3
where t1.field4 is null and t2.field4 > '2017-04-27';
该方式也比较灵活,ON条件和WHERE条件按需添加。