gpt4 book ai didi

mysql - 创建复杂的 MySQL 更新查询

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

我正在尝试创建一个 UPDATE 查询,该查询将使用用户的 id 替换名为 TimeStamps 的表中的 NameID 字段来自另一个名为 Names 的表的 字段值。这是一些示例数据。

名称表

id:1
name:John
password:1234

时间戳表

id:1
name:**John**
timestamp:01/01/2000 12:00:00

我想将 TimeStamps 表中的 Name 字段替换为 Names 中相应的 id 值 table 。我不完全确定如何编写查询,但我知道它是这样开始的。

UPDATE TimeStamps
SET NameID=(NamesTableReference)
WHERE NameID=(TimeStampsTableReference);

这样我就可以开始针对用户的id而不是用户的Name运行查询。我们有多个同名用户,但它无法提取正确的数据,因为它正在提取多个用​​户。我可以手动更新数据,但表中有数十万行,这将花费太多时间。任何人都可以阐明我需要在下面的查询中添加/更改的内容吗?谢谢!

最佳答案

我认为您只是想要加入:

update timestamps t join
names n
on t.id = n.id
set t.name = n.name;

但是,更新不是必需的。您有一个连接两个表的id。只需在使用时间戳时使用它即可。也就是说,使用 join 查找 name 而不是将其存储在两个位置 - 并冒着名称与 id 关联的风险。 code> 不知何故在两个表中最终有所不同。

关于mysql - 创建复杂的 MySQL 更新查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30896104/

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