IN
elige la lista de valores coincidentes. EXISTS
devuelve los valores booleanos como verdadero o falso. Existe es más rápido que en.
Ejemplo
EN
select ename from emp e where mgr in(select empno from emp where ename='KING');
EXISTE
select ename from emp e
where exists (select 1 from emp where e.mgr = empno and ename = 'KING');