mysql同步单个字段更新机制记录

最近工作中接到新的需求,需要将订单表的时间赋值到另外一张表,但是订单的数据一直在增加,怀疑update的数据会一直更新,量会越来越大,对效率造成直接的影响,故进行测试

1.直接执行update语句

update order_general,yt_order set order_general.set_date = yt_order.set_date
where order_general.third_order_code = yt_order.order_code    

2.添加限制条件当a表的值为空的时候再进行更新

update order_general,yt_order set order_general.set_date = yt_order.set_date
where order_general.third_order_code = yt_order.order_code    
and order_general.set_date is null

但是当我执行第一种sql的时候发现已经更新过的数据是没有再次更新的,故大胆测试,干掉其中一个数据再次执行,执行后发现只修改了一行数据,如下图

mysql同步单个字段更新机制记录

 

结论:同步单个字段第一种写法和第二种写法是没有区别的,多个字段没有测试,但想着也是一样的,各位看官可以自己尝试一下