Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: Join Predicate Question

Re: Join Predicate Question

From: Vladimir M. Zakharychev <bob_at_dpsp-yes.com>
Date: Wed, 18 Sep 2002 18:53:28 +0400
Message-ID: <ama426$8vi$1@babylon.agtel.net>


> Select
> From Claims C Inner Join
> Members M
> On C.EmpID = M.EmpID
> and C.BirthDt >= '1980-01-01'
>
>
> Is that more efficient that placing the additional predicate in a Where
> clause? I guess I'm trying to find out if there is any difference
> between that statement and this one:
>
> Select
> From Claims C Inner Join
> Members M
> On C.EmpID = M.EmpID
> Where C.BirthDt >= '1980-01-01'

Logically they are identical and should produce the same result. But alas, there are still bugs in Oracle's ANSI join syntax implementation, even on 9i R2. For example, there is one which causes join on column=constant to give incorrect result, and result even depends on order of equality predicate arguments (constant=column gives different results from column=constant), while putting equality predicate in where clause always gives correct results.

-- 
Vladimir Zakharychev (bob@dpsp-yes.com)                http://www.dpsp-yes.com
Dynamic PSP(tm) - the first true RAD toolkit for Oracle-based internet applications.
All opinions are mine and do not necessarily go in line with those of my employer.
Received on Wed Sep 18 2002 - 09:53:28 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US