这是对我之前回答的问题的修改
我在下表中有数据:
ROLE_ID | USER_ID
------------------
14 | USER A
15 | USER A
11 | USER B
13 | USER D
13 | USER A
15 | USER B
15 | USER D
12 | USER C
15 | USER C
我想获得只有 13 和 15 的用户 ID。所以根据上面的例子,我应该只回来USER D
下面的查询是在我之前的回答中提供的,这NOT IN
部分是我添加的,但是,这并没有达到目标..
select user_id
from my_table
where role_id in (13,15) AND role_id not in (11,14)
group by user_id.
having count(distinct role_id) = 2