consulta aninhada vs jOINs

quem poderia ser muito eficiente se eu usarnestted subquery, JOINs Ou talveztemp tables .. outra pergunta: nas subconsultas, se eu usar a cláusula IN duas vezes com a mesma consulta, ela deve ser executada duas vezes também!? como isso :

Select ...
From X 
Where Exists( Select 1  From Y Where Idx = Y.SomeColumn ) 
Or Exists( Select 1 From Y Idy = Y.SomeColumn )

quantas vezes a subconsultaSELECT * FROM Y pode ser executado nesta consulta!
e se eu usar dessa maneira:

With XX As
(
Select ...
From Y
)
Select ...
From X
Where Exists ( Select 1 From XX Where Idx = XX.SomeColumn )
Or Exists ( Select 1 From XX Where Idy = XX.SomeColumn )

thanx :)

questionAnswers(4)

yourAnswerToTheQuestion