【发布时间】:2021-12-23 10:10:10
【问题描述】:
我有两个简单的表格:
表 1:
id , h_id, role, l_name
1 , 2, 3, test1
1, 2, 4, test1
表2:
id , h_id, role, l_name
1 , 2, 3, test1
1 , 2, 3, test2
我们没有任何主键或外键可供比较。 id , h_id, role, 可能在两个表中都有相同的数据,但 l_name 可能不同。它也可以是其他列。
比较上述情况的最佳方法是什么?
【问题讨论】:
-
做一个
union应该给你独特的数据。 -
2 个带有 WHERE NOT EXISTS 的单独查询 - 第一个查询搜索 table1 中 table2 中不存在的行,第二个查询解决后向任务。长列列表(最佳 - 用于比较的所有列)的复合索引的存在将得到改善。
-
您的预期结果是什么?