The problem is still there...
...thank You for your answer. I tried your suggestion to use ANSI syntax and used your syntax exactly as proposed. Unfortunately, the result set is identical to the one with the Oracle syntax and wrong. The problem is somewhere deeper in SapDB.
SAP: The following SQL statement produces wrong results:
Nope.SELECT a.x, b.y, c.z FROM a LEFT JOIN b ON a.x=b.x LEFT JOIN c ON a.r=c.x WHERE c.z=1799 AND EXISTS (SELECT * FROM p JOIN u ON p.s=u.x WHERE p.x=a.x AND u.t='text')This should work fine.
BTW. I know that the "LEFT JOIN c" could be changed into "JOIN c" since a condition c.z=1799 cannot hold true otherwise (if changed, the problem disappears). But the JOIN clauses are part of a VIEW definition where the condition is a condition on the view. In our general case, conditions are on separate LEFT JOINed tables ORed together (imagine to replace "c.z=1799" by "(c.z=1799 OR b.y=4711)"). A change then is not possible anymore.
Tsch�ss,
Falk
--
Dr. Falk Langhammer
Living Pages Research GmbH
Kolosseumstr. 1a D-80469 Munich, Germany
mailto:[EMAIL PROTECTED] http://www.living-pages.de
Phone +49 (89) 189 207-27 Fax +49 (89) 189 207-29
Mobil +49 (171) 79 39 667
mailto:[EMAIL PROTECTED] (urgent SMS with subject header)
_______________________________________________
sapdb.general mailing list
[EMAIL PROTECTED]
http://listserv.sap.com/mailman/listinfo/sapdb.general
