Beschouw het voorbeeld van de EMP
tabel in die link.
Specifiek deze vraag -
SELECT e1.empno, e1.sal
FROM emp e1
WHERE e1.sal > ANY (SELECT e2.sal
FROM emp e2
WHERE e2.deptno = 20);
In het geval van ENIGE, is de vraag die u stelt:"Is mijn salaris hoger dan dat van wie dan ook op afdeling 20 (minstens 1 persoon)". Dit betekent dat je hoopt op ten minste één persoon heeft een salaris minder dan jij. Als er geen rijen zijn, retourneert dit FALSE
omdat er niemand is wiens salaris lager is dan jij, je hoopte op minstens één.
In het geval van ALLES is de voor de hand liggende vraag die u zou stellen:"Is mijn salaris hoger dan dat van iedereen?". Dat herformuleren als "Is er niemand die een hoger salaris heeft dan ik?" Als er geen rijen worden geretourneerd, is uw antwoord TRUE
, omdat "er inderdaad niemand is wiens salaris hoger is dan ik.