Я хочу посчитать количество sids, которые посещают 2 конкретных курса (crn). Я могу отобразить указанные sids, но по какой-то причине я не могу их подсчитать.
Я хочу отобразить количество студентов, которые принимаютcrn = 12345 и crn = 20976
вот моя таблица
sid | crn | grade
12321 | 12345 | A
12321 | 20976 | B
21008 | 12345 | C
21008 | 20976 | A
21008 | 28469 | D
21090 | 12345 | C
21090 | 20976 | F
вот код, который работает
select sid from takes where crn in (12345 , 20976 ) group by sid HAVING COUNT(*) = 2
вот коды, которые я пробовал
select count(sid) from takes where crn in (12345 , 20976 ) group by sid HAVING COUNT(*) = 2
select sid, count(sid) from takes where crn in ( '12345', '20976') GROUP By sid HAVING count(*) > 1
select count(sid) from takes where (select sid from takes where crn in ( '12345', '20976') GROUP By sid HAVING count(*) > 1 )
select sid, count(sid) from takes where (select sid from takes where crn in ( '12345', '20976') HAVING count(*) > 1 ) GROUP BY sid
Итак, вот мой вопрос, как я могу заставить эту вещь работать?Я имею в виду, как трудно для некоторого кода сосчитать вещи, которые он может отобразить, и отобразить это число