Това е пример за заявка "sets-within-sets". Препоръчвам агрегиране с having
клауза, защото това е най-гъвкавият подход.
select score
from t
group by score
having sum(id = 2) > 0 and -- has id = 2
sum(id = 4) > 0 -- has id = 4
Това, което прави това, е обобщаване по резултат. След това първата част от having
клауза (sum(id = 2)
). ) брои колко "2" има на резултат. Второто е броене на колко "4". Връщат се само резултати, които имат "2" и "4".