Citat:
onda se filterovanje desi POSLE JOINa, a kad umesto WHERE prosirim ON iskaz onda se filterovanje desava PRE JOINa? Sa WHERE znaci prvo povuce SVE u join (na primer 50,000 rekorda) pa onda isfiltrira 5,000 koji mi trebaju, a sa prosirenim ON se nikad ne pokupi svih 50,000 nego odmah samo 5,000? Fenomenalno.
Nije fenomenalno, mene je samo malo dovelo u zabunu ;)
Testirao sam oba nacina kod sebe i Estimated execution plan je isti, prvo se selektuju zapisi, i samo nad selektovanim zapisima se radi JOIN.
Dakle, mssql server ipak optimizuje ovu vrstu upita, cime mozganja tipa 'sta je bolje/brze/vece' postaju obsolete i na znacaju dobija samo citljivost sql kooda.
@simke: da li za tvoju tvrdnju (da postoji razlika u brzini u zavisnosti kako ukucas sql) imas neki slucaj koji ja previdjam?
ss.
When something is hard to do, then it's not worth doing.