[英]find Missing ID in table oracle
我在下表中有数据:
Primary_id Serial_ID PRIMARY_ID SECONDARY_ID queue_ID
1 100 58 89 Q1428291
2 100 58 89 Q1428281
3 100 58 89 Q1428293
4 100 89 58 Q1428293
5 100 89 58 Q1428291
6 100 89 58 Q1428000281
7 200 16 28 Q1433144
8 200 16 28 Q1431953
9 200 16 28 Q1432397
10 200 16 28 Q1431921
11 200 28 16 Q1433144
12 200 28 16 Q1432397
13 200 28 16 Q1431921
我们有 primary_ID 和 Secondary_ID 列。 对于 serial_ID 100,我们有 3 个主要记录和 3 个辅助记录。如果您看到数据 Primary_ID 变为辅助记录,辅助记录变为主要记录(每个 3 个)。但是对于 serial_id 200,我们有 4 个主要记录但 3 个辅助记录..
我想要这种不匹配的记录。 请协助
如果我理解正确,您希望serial_id
上每个主要/次要组合的行数相同。 如果这是正确的,您可以使用两个级别的聚合:
select serial_id
from (select serial_id, primary_id, secondary_id, count(*) as cnt
from t
group by serial_id, primary_id, secondary_id
) ps
group by serial_id
having min(cnt) <> max(cnt);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.