gpt4 book ai didi

Mysql - 从另一个表数据更新列而不减少行

转载 作者:行者123 更新时间:2023-11-29 11:01:59 25 4
gpt4 key购买 nike

我陷入了以下场景:

表格订单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

然后使用更新查询。但貌似是按照客户对订单进行分组,所以并不能反射(reflect)实际的订单数,导致部分order_city和order_state留空。

如果知道同一客户有很多订单,我该如何更新订单表中的每个订单?

最佳答案

您可以使用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

关于Mysql - 从另一个表数据更新列而不减少行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42078528/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com