SQL Server:将列数据值从一个表复制到同一数据库中的另一个表

时间:2017-01-28 20:23:51

标签: sql sql-server-2008

我在同一个SQL Server数据库中有两个不同的表。在我的表T1中,我有4列10行。我有一个包含5列的表T2。我想将表T2中第五列的内容复制到表T1的第五列。

但是,当我按照以下

进行交叉表更新时
update T1
set T1.fifthColumn = T2.fifthColumn
from T1, T2

使用T2中第五列的第一行值(数据)更新T1中的10行。有什么办法可以将T2中第五列的值复制到T1吗?我尝试了很多例子,但没有一个能正常运作。

PS:我正在使用SQL Server 2008。

1 个答案:

答案 0 :(得分:1)

您已经在T1中创建了额外的(第5个)列,它是正确的数据类型,但只是空值,对吗?你还有4个专栏是什么?我假设你可以加入一些独特的密钥?两个表中的其他4列是否相同?

我会做这样的事情:

update T1  set T1.fifthColumn = T2.fifthColumn
from T1 left join T2 on T1.keyField = T2.keyField