update demo_order a set order_name='橘子' where exists (
select 1 from demo_table b where a.order_id=b.order_id );原始数据:
执行语句后的数据:
以上语句可以这样理解,在demo_order中满足两表id相等这一条件的所有行的order_name变为橘子。换句话来讲就是exists作为一个判断条件,如果后面的语句成立,则做相应操作。 update demo_order a set order_name='梨' where not exists ( select 1 from demo_table b where a.order_id=b.order_id );
执行后:
这一语句恰是第一个语句的反面,就是把不满足条件的语句进行相应操作。