Найти внешний ключ, соответствующий нескольким значениям строки

У меня дизайн стола вот так

person_id   |   department
1           |   a
1           |   b
2           |   a
2           |   c
3           |   b
3           |   a

и хотел бы, чтобы запрос возвращал все person_id, принадлежащие как отделам a, так и b. Я подумал, что это будет что-то вроде

select person_id from table group by person_id having ....

но не могу понять это. Кто-нибудь знает, как я могу это сделать?

Изменить: я понял, что я могу сделать следующее. Но это похоже на взлом.

select person_id from table where department='A' or department='B' 
     group by person_id having count(1) > 1

Ответы на вопрос(2)

Ваш ответ на вопрос