Ik denk dat je een beetje in de war bent, je hebt een verkeerd idee, 'EXISTS' werkt sneller dan 'IN' en ik probeer je de reden duidelijk te maken..
EXISTS retourneert een boolean en retourneert een boolean bij de eerste overeenkomst. Dus als je te maken hebt met duplicaten/veelvouden, is 'EXISTS' sneller uit te voeren dan 'IN' of 'JOIN', afhankelijk van de gegevens en de behoeften.
Terwijl 'IN' syntactische suiker is voor OR-clausules. Hoewel het erg meegaand is, zijn er problemen met het omgaan met veel waarden voor die vergelijking (ten noorden van 1.000). In het geval van duplicaten/veelvouden controleert 'IN' alle bestaande waarden, wat natuurlijk meer tijd kost om uit te voeren dan 'EXISTS', daarom is 'IN' altijd relatief langzamer dan 'EXISTS'.
Ik hoop dat ik je verwarring heb opgehelderd.