我使用 TOAD 进行 ORACLE 查询,现在我有疑问,为什么查询结果总是显示 2 而我已经对我的列进行了分组。
为了清楚起见,这是我的代码:
SELECT DISTINCT
M.MODEL_NO,
P.FORM_NO,
P.MODEL_NO,
P.DATE_ADDED,
Q.FORM_NO,
Q.STATUS_QTY,
SUM(Q.QTY) OVER (PARTITION BY M.MODEL_NO ORDER BY M.MODEL_NO
RANGE UNBOUNDED PRECEDING) QTY
FROM
SEIAPPS_MODEL M, SEIAPPS_PRODUCTION_STATUS P, SEIAPPS_QTY Q
WHERE
P.FORM_NO = Q.FORM_NO AND P.MODEL_NO = M.MODEL_NO AND M.MODEL_NO = '17' AND P.DATE_ADDED
BETWEEN '2013-08%' AND '2013-10' AND Q.STATUS_QTY = 'OK'
对于 sum Quantity 是成功的,但我的问题是,为什么结果总是显示双倍的数据?逻辑是,如果型号相同,那么尽管添加了不同的日期,但它将对其求和。