Пересечение по значениям таблицы (SQL) - PullRequest
0 голосов
/ 19 ноября 2018

У меня есть таблица следующим образом:


Class | Dept | programs |        
.........................        
1     | 1    |2001      |     
.........................   
1     | 1    |2002      |     
.........................   
2     | 1    |2001      |     
.........................   
2     | 1    |2003      |     
.........................  
3     | 1    |2003      |     
.........................  
3     | 1    |2004      |     
.........................  

Вопрос, который у меня возникает, когда я выбираю select distinct programs where class in (1,2), запрос будет возвращаться 2001, 2002, 2003. Я хочу выбрать только те программы, которые являются общими для 1 и 2, например, 2001. Аналогично, когда я ищу класс в (2,3) он должен вернуться только в 2003 году.

Возможно ли это?

1 Ответ

0 голосов
/ 19 ноября 2018

Вы можете попробовать ниже

DEMO

select programs
from tablename t1
where class in (1,2)
group by programs
having count(distinct class) =2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...