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: Oracle outer join syntax (+) not working???

Re: Oracle outer join syntax (+) not working???

From: David Portas <REMOVE_BEFORE_REPLYING_dportas_at_acm.org>
Date: 17 Jun 2006 12:19:36 -0700
Message-ID: <1150571976.851487.91470@g10g2000cwb.googlegroups.com>


DA Morgan wrote:
>
> I would appreciate a correction if I am wrong but my understanding
> has been that the (+) join operator was the ISO standard prior to ISO
> 99 when the ISO and ANSI standards were, in a sense, merged.
>

I find that SQL Validator is a good place to check: http://developer.mimer.se/validator/

I also found SQL BNFs here:
http://savage.net.au/SQL/

Contrary to what I said before I realise I don't have the SQL89 doc. However, the later docs do cover deprecated features as well, but not the Oracle (+) syntax. Everything I read says that outer joins weren't introduced until SQL92. See
http://www.wiscorp.com/is_sql_a_real_standard.pdf for example.

> You might note that this operator also exists in Sybase and SQL Server.
> It is not just an Oracle syntax.

Not in Microsoft SQL Server and I'm pretty sure not in Sybase either (although it's been 10 years since I did much Sybase SQL). Sybase and MSSQL do have the equally proprietary *= / =* syntax, which is similar to Oracle but not quite equivalent. In particular, differences could occur due to the evaluation order of joins relative to other comparison operators.

The old *= syntax has been deprecated by SQL Server for years and I almost never come across it anywhere. What suprises me is that Oracle's (+) syntax still seems to be common. Given the important advantages of the standard syntax (full joins; non-equijoins; well-defined evaluation order; portability) it's odd that it doesn't seem to have gained the universal acceptance in the Oracle world the way it has done elsewhere.

-- 
David Portas
Received on Sat Jun 17 2006 - 14:19:36 CDT

Original text of this message

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