sql - 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;
推荐阅读
- python - 为 ID 和 Json 对象列表构建缓存结构
- java - 如何解决“未报告的异常 AWTException ;必须被捕获或声明为抛出”。机器人实例
- xml - XmlException: Character '=' may not be contained within a name
- swift - 如何按角度移动 SpriteNode?
- c++ - 为什么我的好友功能无法访问私人会员?
- plpgsql - Oracle 到 Postgres 转换故障排除
- python - 在Python中返回矩阵中间索引的干净方法
- webix - Webix treetable 小部件是否支持动态添加/删除/更新树节点和相应的表行?
- html - 即使没有输入,文本周围也会出现空格
- soapui - 从 ReadyAPI 自动创建缺陷