2015-08-23 208 views
2

我有两个表客户和订单。我想用一个查询更新两个表中的不同值。例如,客户表有一个城市列,值为德国,订单表具有状态列,值保持不变,我想将德国更改为伦敦,并坚持使用一个查询解决。这里是低于内部连接mysql更新查询

UPDATE customer,order INNER JOIN order ON customer.cust_id = order.cust_id SET cust_city = 'Lahore' AND order_status= 'Resolved' WHERE cust_id = 2 

的MySQL查询正在针对此查询

回答

10

MySQL错误支持此操作:

UPDATE customer c INNER JOIN 
     order o 
     ON c.cust_id = o.cust_id 
    SET c.cust_city = 'Lahore', 
     o.order_status = 'Resolved' 
    WHERE c.cust_id = 2 ; 

注:order是表一个非常糟糕的名字,因为它是一个SQL关键字。为不需要转义的事物选择名称。