【发布时间】:2019-04-02 09:38:47
【问题描述】:
table1 dorm_ID Person_ID
145 66689
146 66692
150 66585
151 68989
table2 P1 P2 Relationship
78989 66689 Roommate
58596 66689 Bio teacher
79858 66689 English teacher
88859 66692 Roommate
58597 66692 English teacher
98557 66585 Roommate
98999 68989 Chemistry teacher
98992 68989 English teacher
我想选择同时拥有室友和英语老师的 dorm_ID 作为关系。我需要加入 Person_ID= P2 上的表。有没有一种方法可以设置一个查询来选择 dorm_id 的重复值(如果有的话),然后只选择具有“室友”或“英语老师”关系的那些。
我的期望值:
dorm_ID Person_ID P1 P2 Relationship
145 66689 78989 66689 Roommate
145 66689 79858 66689 English teacher
146 66692 88859 66692 Roommate
146 66692 58597 66692 English teacher
我尝试过使用涉及 HAVING COUNT(*) 的查询,但这并不能解决问题。我不想要重复的计数,我希望将重复分组在一起。
【问题讨论】:
标签: sql-server join select duplicates