Zapytanie SQL, aby policzyć, ile razy pewne wartości występują w wielu wierszach

Przypuśćmy, że mam tabelę danych wyborczych, nazwijmy ją WYBORAMI, z jednym rzędem na wyborcę na wybory, tak:

VoterID ElectionID
A           1
A           2
B           1
C           2
D           3
E           1
E           2

Chcę znać liczbę wyborców, którzy głosowali zarówno w wyborach 1, jak iw wyborach 2; Nie dbam o nikogo innego. Liczba powinna wynosić 2 (wyborca ​​A i Voter E).

Czy coś takiego działa:

select count(Elections) as NumVoters
from (
select VoterID, ElectionID, count(ElectionID) as Elections
from ELECTIONS
where ElectionID=1 or ElectionID=2
group by VoterID
having (count(ElectionID)=2)
) x;

AKTUALIZACJA: To jest moje pierwsze pytanie tutaj i jestem zdumiony tym, jak pomocni i szybcy byli ludzie. Poprawiłem powyższe zapytanie, aby naprawić brak aliasu na końcu i dodać kończący średnik.

DZIĘKUJĘ CI!

questionAnswers(5)

yourAnswerToTheQuestion