首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL:使用两个表中存在的唯一键将数据从一个表复制到另一个表中

SQL:使用两个表中存在的唯一键将数据从一个表复制到另一个表中
EN

Stack Overflow用户
提问于 2016-10-19 19:54:38
回答 2查看 177关注 0票数 0

我有两个表,其中包含相同的唯一键。我需要匹配这些键,然后将数据从表2复制到表1。

原件:

代码语言:javascript
复制
Key COL1 COL2          Key COL3
 1   01  NULL           1   05
 2   02  NULL           2   12
 3   03  NULL           3   27

要求:

代码语言:javascript
复制
Key COL1 COL2          Key COL3
 1   01   05            1   05
 2   02   12            2   12
 3   03   27            3   27

谢谢你的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-10-19 21:21:42

最好的答案可能是一个UPDATE FROM --基于这两个表的查找(对于Server,有人说使用JOIN,有人说没有必要,而没有join更简洁)。

参见这里的一些示例:SQL update from one Table to another based on a ID match

为了方便起见,下面是一个适合您的场景的查询:

代码语言:javascript
复制
UPDATE Table1 SET 
    Col1 = Table2.Col1,
    Col2 = Table2.Col2,
    Col3 = Table2.Col3,
FROM Table2
WHERE Table2.Key = Table1.Key
票数 0
EN

Stack Overflow用户

发布于 2016-10-19 21:45:26

试试这个:

update table1 set col2 = ( select col3 from table2 where table2.key=table1.key ) where exists ( select * from table2 where table2.key=table1.key );

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40140392

复制
相关文章

相似问题

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