我对以下情况感到困惑:
表格订单 order_id,order_date,order_customerid,order_state,order_city
表客户 customer_id,customer_city,customer_state
我需要将customer_city和customer_state复制到order_city和order_state,它们当前为null。我尝试使用以下连接:
select *
from orders o
inner join customers c
on o.customerid = c.id
然后使用更新查询。但它似乎是按客户分组订单,因此它不反映实际的订单数量,导致一些order_city和order_state保持为空。
如果知道来自同一客户的订单很多,我该如何更新订单表中的每个订单?
答案 0 :(得分:0)
您可以使用multi-table update syntax。
这样的事情会对你有用:
update orders
inner join customers on customers.customer_id = orders.order_customerid
set orders.order_state = customers.order_state,
orders.order_city = customers.order_city
where orders.order_state is null
or orders.order_city is null