So, as others have already explained, the =* operator in SQL Server points to an external connection.
However, in Oracle =+ there is no operator at all. It looks like ValidInfoGroup.InfoGroup =+ ValidInfo.InfoGroup actually parsed as ValidInfoGroup.InfoGroup = (+ ValidInfo.InfoGroup) , where + is a unary identity operator.
Since this code is an attempt to write an external connection depending on the database used, it is incorrect when used in Oracle - in fact, it performs a normal connection. The correct way to write this condition to Oracle custom syntax would be ValidInfoGroup.InfoGroup = ValidInfo.InfoGroup (+) .
It might be better to use the ANSI SQL join syntax to specify an outer join, which in my opinion would eliminate the need to check which database is being used.
Thanks to Martin and Nikolai for helpful comments on other answers.
Dave costa
source share