Re: v6/v7 differences - let's share the undocumented ones

From: Brian Wolkowski 263-2600 <wolkowsb_at_hp.cuug.ab.ca>
Date: Sat, 13 Nov 1993 00:06:52 GMT
Message-ID: <WOLKOWSB.93Nov12170654_at_hp.cuug.ab.ca>


In article <1993Nov5.024944.21194_at_ugc.uucp> geoff_at_ugc.uucp (Geoff Coleman) writes:

>In article <2b7ci6$qql_at_access.digex.net> mstein_at_access.digex.net (Michael P. Stein) writes:
>>
>> The two undocumented differences I have found (Oracle 7.0.12, HP-UX):
>>
>> - The outer join operator can no longer appear in an OR clause or the IN
>> operator; there is a new error message (ORA-01719) specifically rejecting such
>>statements. Example:
>>
>> select ... from t1, t2
>> where t1.foo = t2.foo (+)
>> or t1.foo = t2.bar (+)
>>
>>worked in v6 but gives an error on line 3 in v7. Workaround:
 

> But did it work in V6?

The outer join works fine in V6.0.33, we use it all over the place. Converting to V7 is a scary thought if we have to re-write all of our queries using multiple outer-join columns to do unions instead. We have a number of queries doing outer-joins based on up to 5 join columns. When you're selecting 30-40 columns at a time, having to

   select 30-40 columns from t1, t2
   where t1.foo = t2.foo (+)
   union
   select 30-40 columns from t1, t2
   where t1.foo = t2.bar (+)
   union
   select 30-40 columns from t1, t2
   where t1.foo = t2.blog (+)
   union
   select 30-40 columns from t1, t2
   where t1.foo = t2.stuff (+)
   union
   select 30-40 columns from t1, t2
   where t1.foo = t2.barff (+)

ends up being a real horrendous selct clause. PUKE !!! Time for a re-think of the database design ?? I think so.

--
Later...
Brian R. Wolkowski
  e-mail: wolkowsb_at_cuugnet.cuug.ab.ca
  voice:  (403) 242-7886
Received on Sat Nov 13 1993 - 01:06:52 CET

Original text of this message