SELECT *
FROM
IKO_BUYING_TABLE A,
BUYREQ_TBL B,
WK_TANTOU_MST C,
SUPPAT_MST D
WHERE
B.BRQ_ESTREQ = A.BUY_EST_NUM AND
B.BRQ_ESTREQ_MEISAI = A.BUY_EST_NUM_SPEC AND
A.BUY_OPERATION_REPLY = C.OLD_TANCD(+) AND
A.BUY_SUPPLIER = D.SUK_SUPPCD(+) AND
B.BRQ_PART_ID = D.UPD_PROG(+)这个SQL执行就会出现这个错误, 改怎么改?ORA-01417
FROM
IKO_BUYING_TABLE A,
BUYREQ_TBL B,
WK_TANTOU_MST C,
SUPPAT_MST D
WHERE
B.BRQ_ESTREQ = A.BUY_EST_NUM AND
B.BRQ_ESTREQ_MEISAI = A.BUY_EST_NUM_SPEC AND
A.BUY_OPERATION_REPLY = C.OLD_TANCD(+) AND
A.BUY_SUPPLIER = D.SUK_SUPPCD(+) AND
B.BRQ_PART_ID = D.UPD_PROG(+)这个SQL执行就会出现这个错误, 改怎么改?ORA-01417
用中间表应该就可以了。
或者
SELECT *
FROM
IKO_BUYING_TABLE A,
BUYREQ_TBL B,
WK_TANTOU_MST C,
SUPPAT_MST D ,
SUPPAT_MST E
where
A.BUY_SUPPLIER = D.SUK_SUPPCD(+) AND
B.BRQ_PART_ID = E.UPD_PROG(+) 这个方法没验证过,你可以试试