>>>What's the main difference of those 2 SQLs? Am I right to say that the first one is faster than the second one?
>>>
>>>SELECT ELEM_ID FROM ELEM WHERE EXISTS (SELECT ELEM_ID FROM ANSWER WHERE RATER_ID=254 AND ANSWER.ELEM_ID=ELEM.ELEM_ID)
>>>
>>>SELECT ELEM.ELEM_ID FROM ELEM,ANSWER WHERE ANSWER.RATER_ID=254 AND ANSWER.ELEM_ID=ELEM.ELEM_ID AND ELEM.CHILDREN
>>
>>where is the elem.children in the first sql?
>
>Your correct is should have been
>
>SELECT ELEM_ID FROM ELEM WHERE CHILDREN AND EXISTS (SELECT ELEM_ID FROM ANSWER WHERE RATER_ID=254 AND ANSWER.ELEM_ID=ELEM.ELEM_ID)
>
>>in theory (according to the books) the first one should be faster...
>
>So, if the tables grow, the first one will always return the SQL immediately because it benefits of full Rushmore and the second one not?
i think so... also because outside select is searching against a subset of ANSWER...