Toad World® Forums

13.2.0.230 - Refactor join syntax gives wrong results

I'm getting strange results when using the "Convert to ANSI Join Syntax" and "Convert to Oracle Join Syntax" options.

Consider this simple query:
SELECT a.col1
, b.col2
FROM a
JOIN b ON b.id1 = a.id1;

Refactor to Oracle join gives this result:
SELECT a.col1
, b.col2
FROM a
, b;

The other way around, with this query:
SELECT a.col1
, b.col2
FROM a
, b
WHERE b.id1(+) = a.id1;

Refactor to ANSI join gives this result:
SELECT a.col1
, b.col2
FROM a
CROSS JOIN b
WHERE (b.id1 /(+)/
) = a.id1;

Both results are clearly wrong.

Kind regards,
Remco

Hi Remco,

Yep, I see what you're talking about. I've logged that as a bug so it can be fixed as soon as the beta starts up again. I'll let you know when I have this fixed.

Thanks again for letting us know about this!

-John