Cita: El tema es que la condici'on es como hacer un exists, no?
No. Es un
matching 1:1 entre registros de dos tablas. La condición sólo indica qué campos se deben igualar.
la diferencia es la implementación interna de las dos cosas. En un caso (EXISTS) realiza comparaciones entre valores de tablas leídas. En el INNER JOIN el matching se realiza a medida que se lee, y habitualmente por medio de índices, cuando se trata de campos clave o contenidos en un índice definido sobre alguna de las tablas.
Son cosas invisibles al usuario.