Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: New 8.1.6 bug of the day
Here's my guess to the cause of the original problem :
(quoting from the original SQL :)
SELECT TABLE1.F1, TABLE1.F2, TABLE2.F1, TABLE2.F2, TABLE2.F3
FROM TABLE3, TABLE2, TABLE1
WHERE TABLE1.F1='test1'
AND TABLE1.F1=TABLE2.F3 .. and one more line (ommitted)
| | | |
| | | |
| | | |
^^^^^^^^^ | -- selection ^^^^^^^^^ -- join
leading to the combination (because of the first AND) of :
| | ^^^^^^^^^^^^^^^ * which is indeterminate.
or to put it another way, if you're limiting TABLE1.F1 to a particular
value then
it seems more logical to do EXACTLY the same thing with TABLE2.F3.
Otherwise you're rightly going to confuse the parser because it doesn't always know if you want to do a join on TABLE.F1 and then something else or if you just want to do a straight-forward selection based on a string literal.
It's not so much Oracle's parser being wrong but that you're not talking to it in a form it understands properly.
Fair enough though, it IS only a computer program after all ;-)
P.S. I don't much care for the subject title of this thread but I'm loathe to change it as this confuses some newsgroup client software. Anyway I'm sure you get my hint.
David P.
Oracle Certified DBA.
![]() |
![]() |