繁体   English   中英

SQL 一对多从多对多的关系

[英]SQL one to many from many to many relation

我正在尝试找出 SQL 查询,该查询将仅列出一对多关系

下表包含 11 条记录,我想返回两行 Field1 = 7(一对多)

表格1:

Field1  Field2  
1   a   
2   a   
3   b   
4   b   
5   c   
4   d   exclude 4 and 6 as d is linked to both

6   d   
6   e   
7   f   One to Many
7   j   One to Many
8   g   

在此处输入图像描述

您希望每个field1的所有field2值都出现一次。 这是一个使用 window 函数的方法:

select field1
from (select t.*,
             count(*) over (partition by field2) as num_field2
      from t
     ) t
group by field1
having count(*) > 1 and max(num_field2) = 1;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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