Detta är ett exempel på en "set-in-uppsättningar"-fråga. Jag rekommenderar aggregering med having
klausul, eftersom det är det mest flexibla tillvägagångssättet.
select score
from t
group by score
having sum(id = 2) > 0 and -- has id = 2
sum(id = 4) > 0 -- has id = 4
Vad detta gör är att aggregera efter poäng. Sedan den första delen av having
klausul (sum(id = 2)
) räknar upp hur många "2" det finns per poäng. Den andra är att räkna upp hur många "4":or. Endast poäng som har "2" och "4" returneras.