表 a 
order_id(自增)    order_code             order_state(状态)
----------------------------------------------------------------------
1                       2005000012345       a
2                       2005000045678       t  
3                       2005000057892       t表 b
id(自增)      order_id       order_state
-------------------------------------------------------------
1                   1                     t
2                   1                     c
3                   1                     a
4                   2                     a
5                   2                     t问题:如何同时把两张表中的 t 修改为 e

解决方案 »

  1.   

    何謂同時修改?用兩個修改語句不行嗎?--一、必須先改表b
    UPDATE b SET order_state='e' where 
    (order_id,order_state) in 
    (select b.order_id,b.order_state from a,b 
    where b.order_state='t' and a.order_id=b.order_id and 
    a.order_state=b.order_state);--可以去掉a.order_state=b.order_state條件
    --二、再改表a
    UPDATE a SET order_state='e' where order_state='t'
      

  2.   

    我的注釋中有點小問題,應為:--如果兩表中的order_id加order_state不是唯一的,則不能去掉a.order_state=b.order_state條件