oracle - Toad/Oracle 中具有多个表/内部联接的 MAX DATE
问题描述
我只使用 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 的 NEED MAX DATE
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'
解决方案
要获取您想要使用"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
但在您的查询中没有指定它们。找到这些字段,将它们插入到上面的查询中,您应该会得到您正在寻找的结果。
推荐阅读
- elasticsearch - RSpec 和 Elasticsearch 导致 CI 失败
- java - Java中ArrayList的retainAll和removeAll的时间复杂度是多少。
- maven - 从 artifactid 拉变量
- python - 前缀 IV 值 AES 加密产生错误
- html - Bootstrap 3 具有 3 列 Flex 或 Col 的全宽和高布局
- c# - 从字符串解析后链接不起作用
- python - 使用 json.dump 序列化 Python 对象
- python-3.x - 找不到仅适用于数字的 Tesseract 4.0 tessdata
- ios - Expo react ios build在iPad中无法正常工作
- xamarin - 如何减小 xamarin 表单中占位符的字体大小?