sql - 如何通过多列理想地组合具有不同主键的两个表 HASH
问题描述
我有两张世界国家独立日的表格,我想将它们组合成一张具有不同 ID 的表格,但它们使用不同的主键,任何建议将不胜感激。请求摘要:如何组合具有不同主键但其他字段相同的两个表并理想地删除重复字段哈希匹配和删除重复项
预期结果 这将包括两个表格中的所有独特国家,请一个表格可能有更多国家,我们希望确保我们从每张表格中获取所有不同的国家。理想情况下,该解决方案可能类似于 SQL 中的哈希匹配运算符,它实现了几种不同的逻辑操作,这些操作都使用内存中的哈希表来查找匹配数据。提前谢谢了
需要合并的两张桌子的图像。
解决方案
你似乎想要full join
:
select a.*, b.* -- select the columns you want
from a full join
b
on a.country = b.country;
如果要分配新的唯一 ID,请使用row_number()
:
select row_number() over (order by coalesce(a.country, b.country)) as new_id,
a.*, b.* -- select the columns you want
from a full join
b
on a.country = b.country;
推荐阅读
- android - 为什么当我将 Viewpager 用作 Slider 时,我的应用程序会崩溃
- algorithm - 如何在 O(n) 中编写一个优先的左混洗算法?
- nestjs - NestJs 验证管道不返回任何消息
- python - 如何使用 python 电报机器人管理电报组权限
- spring-boot - Hibernate / Spring boot:当我更新产品时,我成功更新了我要修改的变量但图像消失了(它是blob类型)
- vba - 访问基于使用 VBA 制作的记录的连续表单(填写表单字段)
- android - Coap 服务器资源发现
- mongodb - spring-data-mongodb GroupOperation 问题
- ios - SWIFT - VisionKit - dok.Skaner
- android - WorkManager 中的网络运营商约束