我希望将以下Oracle SQL查询语法转换为使用LEFT OUTER JOIN
而不是(+)
:
SELECT *
FROM TABLEA A, TABLEB B, TABLEC C, TABLED D
WHERE MY_COL = @col_val
AND A.X = B.X(+)
AND B.Y = C.Y(+)
AND D.Z=A.Z
以下是我迄今为止尝试过的:
SELECT *
FROM TABLEA A, TABLEB B, TABLEC C, TABLED D
LEFT OUTER JOIN TABLEA A ON A.X = B.X
LEFT OUTER JOIN TABLEC C ON B.Y = C.Y
WHERE MY_COL = @col_val
AND D.Z = A.Z;
但是我遇到了错误:
"ORA-00904: "B"."X" : 无效的标识符"
该错误与 "B"."X" 标识符无效有关。
@
不能作为赋值符号。 - Barbaros Özhan