MySQL UPDATE JOIN 根据一张表或多表来更新另一张表的数据
warning:
这篇文章距离上次修改已过454天,其中的内容可能已经有所变动。
在MySQL中,你可以使用UPDATE语句和JOIN来根据一张或多张表中的数据更新另一张表的数据。以下是一个使用JOIN的UPDATE语句的例子:
假设我们有两张表:orders和customers。我们想要更新orders表中的status字段,基于customers表中的credit_score字段。
UPDATE orders
INNER JOIN customers ON orders.customer_id = customers.id
SET orders.status = IF(customers.credit_score > 800, 'paid', 'unpaid')
WHERE orders.status = 'pending';在这个例子中,我们使用了INNER JOIN来匹配两张表的customer_id和id字段。然后,我们使用了SET来根据customers表中的credit_score字段更新orders表中的status字段。IF语句用于判断信用分数,并根据这个条件设置订单状态。WHERE子句确保只更新那些当前状态为'pending'的订单。
评论已关闭