【发布时间】:2022-12-23 23:29:19
【问题描述】:
目标:创建查询以根据来自另一个表(表 A)的库存调整结果为产品 ID 提取最近的周期盘点事件(表 C)。
将使用表 A 中的所有记录,但不保证在表 C 中具有匹配项。
ID 列将出现在两个表中,但在两个表中都不是唯一的,因此每个表都需要 ID 和时间戳对。
当前简化的 SQL
SELECT
A.WHENOCCURRED,
A.LPID,
A.ITEM,
A.ADJQTY,
C.WHENOCCURRED,
C.LPID,
C.LOCATION,
C.ITEM,
C.QUANTITY,
C.ENTQUANTITY
FROM
A
LEFT JOIN
C
ON A.LPID = C.LPID
WHERE
A.facility = 'FACID'
AND A.WHENOCCURRED > '23-DEC-22'
AND A.ADJREASONABBREV = 'CYCLE COUNTS'
ORDER BY A.WHENOCCURRED DESC
;
这是目前在 LPID 比赛中对 C.WHENOCCURRED 的第一次命中。在朝着基于 WHENOCCURRED 创建 2 个临时表的方向前进之前,想看看是否有更简单的 JOIN 解决方案。
我在 Excel 中有一个正常运行的 INDEX(MATCH(MIN()) 解决方案,但它需要先导出几个系统报告,并且使用 X,XXX 行表时速度非常慢。
【问题讨论】: