您好,我在执行以下查询时遇到了一些问题
SELECT *
FROM PARTNER P
, ADDRESS A
,DOSSIERPARTNERRELATIONSHIP DPR
LEFT JOIN PARTNERHIST PH ON P.ID=PH.PARTNER_ID
WHERE (P.NAME ='Burger' OR PH.NAME='Burger')
AND P.ID = DPR.PARTNER_ID
AND A.PARTNER_ID = P.ID
;
当我尝试执行它时,出现以下错误:
ORA-00904: "P"."ID": invalid identifier
此外,当我尝试以下操作时,我遇到了相同的错误
SELECT *
FROM PARTNER P
, ADDRESS A
,DOSSIERPARTNERRELATIONSHIP DPR
LEFT JOIN PARTNERHIST PH ON PARTNER.ID= PH.PARTNER_ID
WHERE (P.NAME ='Burger' OR PH.NAME='Burger')
AND P.ID = DPR.PARTNER_ID
AND A.PARTNER_ID = P.ID
;
最佳答案
试试这个:
SELECT *
FROM PARTNER P
INNER JOIN ADDRESS A ON A.PARTNER_ID = P.ID
INNER JOIN DOSSIERPARTNERRELATIONSHIP DPR ON P.ID = DPR.PARTNER_ID
LEFT JOIN PARTNERHIST PH ON P.ID= PH.PARTNER_ID
WHERE (P.NAME ='Burger' OR PH.NAME='Burger')
关于sql - Sql 左连接 oracle 上的标识符无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27527242/