繁体   English   中英

在表 oracle 中查找缺失 ID

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM