gpt4 book ai didi

mysql - 用另一个表的列更新一个表的一列(一对多关系)

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

感谢您的宝贵时间。

这是我想做的。我想用另一个表的信息更新一个表的列。

表A

in_number
date

表B

in_number
anchor_date

现在 tableA,每个元组有一个 in_number。但是tableB有几个in_number。它具有一对多的关系。无论如何,当两个表中的 in_number 匹配时,我想用 tableA 中的日期更新 tableB 中的 anchor_date。我怎样才能做到这一点?

我试过了

UPDATE TableB t1, tableA t2
SET t1.anchor_date= t2.date
WHERE t2.in_number = t1.in_number;

但这只会为每个 in_number 更新一行。

请帮忙

最佳答案

首先,您可能应该在 select 查询中使用 join 查找日期,而不是跨表复制数据。让我假设您对数据重复有充分的理由。

其次,您的查询应该有效,但最好使用显式 join 语法编写:

UPDATE TableB b JOIN
TableA a
USING (in_number)
SET b.anchor_date = a.date ;

关于mysql - 用另一个表的列更新一个表的一列(一对多关系),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54078712/

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