【发布时间】:2019-08-27 05:39:10
【问题描述】:
我需要在表中查找缺失的记录。 表一:
ID|Num
X|1
X|2
X|3
X|4
Y|1
Y|3
Y|5
表 2:
Num
1
2
3
4
5
我需要返回:
ID|编号
X|5
Y|2
Y|4
我找到了其他解决方案,可以为我提供 5、2、4,但我还需要与缺失记录关联的 ID。
【问题讨论】:
我需要在表中查找缺失的记录。 表一:
ID|Num
X|1
X|2
X|3
X|4
Y|1
Y|3
Y|5
表 2:
Num
1
2
3
4
5
我需要返回:
ID|编号
X|5
Y|2
Y|4
我找到了其他解决方案,可以为我提供 5、2、4,但我还需要与缺失记录关联的 ID。
【问题讨论】:
如果您想要丢失的数字,请使用cross join 生成所有数字,然后过滤掉存在的数字:
select i.id, t2.num
from (select distinct id from t1) i cross join
table2 t2 left join
t1
on t1.id = i.id and t1.num = t2.num
where t1.id is null;
【讨论】: