Women in Technology

Hear us Roar



Article:
  More on JOINS
Subject:   Outer Joins With Oracle
Date:   2001-09-07 12:43:30
From:   boyd4715
I Believe that the *= is non ansi standard on doing joins. Oracle uses (+). This is place next to the column. So


a.foo = b.foo(+) would do a left outer join
a.foo(+) = b.foo woudl do a right outer join

Full Threads Newest First

Showing messages 1 through 3 of 3.

  • Outer Joins With Oracle
    2004-04-15 01:43:31  juby [View]

    outer joins
    • Outer Joins With Oracle
      2005-04-25 04:02:07  oraguy [View]

      So what does this mean a join can become left or right if we interchange the positions of columns like
      p.partid(+)=s.partid (this is giving all unmatched rows of s table which is on right so this should be called as right outer join)

      By simply changing the positions, it becomes

      s.partid=p.partid(+) (this is also going to give all unmatched rows from s table but since the s table is on left side, so this will be left outer join)

      What i think is that, in oracle properietary joins using + operator, there is no concept of left and right outer join, an outer join is simply an outer join. the operator can be used only to get unmatched rows from a particular table.

      Thanks
      • Outer Joins With Oracle
        2005-10-05 03:41:55  outerjoins [View]

        Hi,
        I've used 2tables holding june month and august month data. In august month i've got (n+1) records whereas in june month n records. On using outer join for august and june month, i got same number of records as their corresponding tables.

        select a.* from aug a, jun b where b.ASST_NO=a.ASST_NO(+); -- getting jun table record count

        select a.* from aug a, jun b where b.ASST_NO(+)=a.ASST_NO; -- getting aug table record count