首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >MySQL如何更新另一个表中同一行中的多个列

MySQL如何更新另一个表中同一行中的多个列
EN

Stack Overflow用户
提问于 2018-07-24 04:06:07
回答 1查看 27关注 0票数 0

我需要更新一个如下所示的表。

代码语言:javascript
复制
ItemID  FID1    FID2    FID3    FName1  FName2  FName3  
100084  2545    2536    2535    

使用另一个表中的数据。另一张表如下所示:

代码语言:javascript
复制
FID    FName
2545   Name 1
2534   Name 3
2536   Name 2

我希望更新后的表看起来像这样:

代码语言:javascript
复制
ItemID  FID1    FID2    FID3    FName1  FName2  FName3  
100084  2545    2536    2535    Name 1  Name 2  Name 3

在单个查询中执行此操作的干净方法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-24 04:30:11

我不会问你为什么要以非规范化的形式存储你的数据;-) -但这应该是可行的:

代码语言:javascript
复制
update one_table t
left join other_table t1 on t1.FID = t.FID1
left join other_table t2 on t2.FID = t.FID2
left join other_table t3 on t3.FID = t.FID3
set t.FName1 = t1.Fname,
    t.FName2 = t2.Fname,
    t.FName3 = t3.Fname
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51486479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档