我只用了Toad / Oracle几周了,所以我还在学习编码等,我对Access中的SQL代码有了解,现在尝试学习Oracle。
我需要从tbl BIC / AZUCDMO0100的UCMRBILDAT返回最大日期,但仅从链接的tbl LH_DAT中包含的合同中返回最大日期
我也尝试过使用MAX UCMRBILDAT,但这没用。
UCMRBILDAT(/ BIC / AZUCDMO0100)
UC_MRESULT(/ BIC / AZUCDMO0100)
UC_MRSTAT(/ BIC / AZUCDMO0100
UC_MRCAT(/ BIC / AZUCDMO0100)
CONTRACT_NUMBER(LH_DAT)
UC_MR_NUMB(/ BIC / AZUCDMO0100)+(/ BIC / AZUCDMO0200)
SELECT UCMRBILDAT,
UC_MRESULT,
UC_MRSTAT,
UC_MRCAT
FROM LH_DAT
( SELECT CONTRACT_NUMBER, MAX (UCMRBILDAT) MXBD
FROM SAPSR3."/BIC/AZUCDMO0100"
GROUP BY CONTRACT_NUMBER) GMR
LEFT OUTER JOIN SAPSR3."/BIC/AZUCDMO0200"
ON (CONTRACT_NUMBER = UCCONTRACT)
INNER JOIN SAPSR3."/BIC/AZUCDMO0100"
ON ("/BIC/AZUCDMO0200".UC_MR_NUMB = "/BIC/AZUCDMO0100".UC_MR_NUMB)
WHERE CONTRACT_NUMBER = '2000014420'
AND UCMRBILDAT = MXBD
AND MR.CONTRACT_NUMBER = GMR.CONTRACT_NUMBER
自BIC / AZUCDMO0100起的最大开票日期,但仅适用于表LH_DAT中包含的合同
编辑在下面的脚本中需要UCMRBILDAT的最大日期
SELECT CONTRACT_NUMBER,
UCMRBILDAT,
UC_MRESULT,
UC_MRCAT
FROM LH_DAT
LEFT OUTER JOIN SAPSR3."/BIC/AZUCDMO0200"
ON (CONTRACT_NUMBER = UCCONTRACT)
INNER JOIN SAPSR3."/BIC/AZUCDMO0100"
ON ("/BIC/AZUCDMO0200".UC_MR_NUMB = "/BIC/AZUCDMO0100".UC_MR_NUMB)
WHERE CONTRACT_NUMBER = '2000014420'
AND "/BIC/AZUCDMO0200".SOURSYSTEM = 'SP'
AND "/BIC/AZUCDMO0200".UCDELE_IND <> 'X'
答案 0 :(得分:0)
要获取"BIC/AZUCDMO0100".UCMRBILDAT
的最大值,其中要使用LH_DAT
的链接值,则要使用:
SELECT MAX(ba.UCMRBILDAT)
FROM SAPSR3."BIC/AZUCDMO0100" ba
INNER JOIN LH_DAT ld
ON ld.some_field = ba.some_field
必须存在将"BIC/AZUCDMO0100"
和LH_DAT
链接在一起的字段,但是在您的查询中未指定它们。找到这些字段,将它们插入上面的查询中,您应该得到想要的结果。