[prev in list] [next in list] [prev in thread] [next in thread]
List: sapdb-general
Subject: RE: AW: bug in outer join with (+)
From: "Stoedtler, Mathias" <mathias.stoedtler () hp ! com>
Date: 2004-06-29 12:13:37
Message-ID: 878F763D1523BA48A192A94F58C03C3F0339B0A8 () rtoexc01 ! emea ! cpqcorp ! net
[Download RAW message or body]
Hi Holger,
Thanx a lot for your quick answer.
The statement you sent seems to work fine and returns the expected result \
(count=205). What's very interesting about it is that it works fine in Oracle and \
Internal SQL mode. But it does not work under Oracle 8 because of an invalid syntax.
So If I understand this right that the original statement isn't working results in a \
bug of MaxDB?
Regards,
Mathias
-----Original Message-----
From: Becker, Holger [mailto:holger.becker@sap.com]
Sent: Tuesday, June 29, 2004 1:48 PM
To: Stoedtler, Mathias
Subject: AW: AW: bug in outer join with (+)
Hi Mathias,
looks like a known but not fixwd design problem
within (+) outer joins syntax in MaxDB.
Could you please try this statement and let me know
the result.
SELECT t1.ent_name
FROM ifc_entities T1
inner join rep_labels T4 on T4.lbl_oid = T1.ent_lbl_oid
left outer join ifc_attributes T6 on T1.ent_atr_oid = T6.atr_oid
left outer join rep_labels T7 on T6.atr_lbl_oid = T7.lbl_oid
left outer join ifc_attributes T10 on T1.ent_search_atr_oid = T10.atr_oid
left outer join rep_labels T11 on T10.atr_lbl_oid = T11.lbl_oid
Kind regards
Holger
SAP Labs Berlin
> -----Ursprüngliche Nachricht-----
> Von: Stoedtler, Mathias [mailto:mathias.stoedtler@hp.com]
> Gesendet: Dienstag, 29. Juni 2004 12:16
> An: maxdb@lists.mysql.com
> Betreff: Re: AW: bug in outer join with (+)
>
>
>
> Hello,
>
> Is my problem the same as in http://lists.mysql.com/maxdb/21965 ?
>
> I'd like to do a select statement with lots of outer joins:
>
> SELECT t1.ent_name
> FROM ifc_entities T1
> ,ifc_attributes T10
> ,rep_labels T11
> ,ifc_attributes T6
> ,rep_labels T7
> ,rep_labels T4
> WHERE (T4.lbl_oid = T1.ent_lbl_oid)
> AND (T6.atr_oid (+) = T1.ent_atr_oid)
> AND (T7.lbl_oid (+) = T6.atr_lbl_oid)
> AND (T10.atr_oid (+) = T1.ent_search_atr_oid)
> AND (T11.lbl_oid (+) = T10.atr_lbl_oid)
>
> On Oracle this works fine and on a database with the same contents it
> returns 205 results. Funny thing about it is that on MaxDB it only
> returns one. Does this belong to the bug described in
> http://lists.mysql.com/maxdb/21965 ?
>
>
> > As a workaround you could enable new outer join handling
> > via command "diagnose optimize join outer on".
>
> I tried this and it hadn't made any effect to the statement results.
>
> I also tried to set the Parameter
> JOIN_OPERATOR_IMPLEMENTATION to YES in
> Database Manager, but I wasn't able to do this because if I
> typed in YES
> still NO appears for the new Value.
>
> Greets,
> Mathias
>
>
>
> --
> MaxDB Discussion Mailing List
> For list archives: http://lists.mysql.com/maxdb
> To unsubscribe:
> http://lists.mysql.com/maxdb?unsub=holger.becker@sap.com
>
--
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe: http://lists.mysql.com/maxdb?unsub=sapdb-general@progressive-comp.com
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic