SQL将pk=fk的第一个表中的值插入到第二个表中不起作用



这是我的两个表的结构:

公司信息

Id
Website (Move to CompanyDetail table)
Company

公司详细信息

Id
CompanyInfoId(FK_PK)
Address
Country
Website (New Field)

我将Website列添加到CompanyDetail,现在需要将所有网站条目移动到CompanyInfo,其中CompanyInfo.Id = ComanyDetail.CompanyInfoId

示例数据:

公司信息

1,www.google.com, Google
2,www.yahoo.com, Yahoo
3,www.microsoft.com, Microsoft

公司详细信息

1,1,adman street, www.google.com
2,1,adman street, www.google.com
3,1,adman street, www.google.com
4,2,yahoo street, www.microsoft.com

我正在尝试这个类似的查询,但有问题。

insert into CompanyDetail (Website) 
select Website 
from CompanyInfo 
where CompanyInfo.Id = CompanyDetail.ComanyDetailId 

有人能帮我吗?感谢

看起来您需要进行更新而不是插入。

UPDATE  cd
SET     Website = c.Website
FROM    CompanyDetail AS cd
INNER JOIN Company AS c ON c.ID = cd.CompanyDetailID;

最新更新