tiptop,可以合併但是沒有合併的採購單(7天以內)
轉載請註明出處,聯繫我: [email protected]
本人熱衷於數據庫技術及算法的研究,志同道合之士, 歡迎探討
SELECT ROWNUM A,
PMN04,
PMN041,
PMN01,
PMC03,
PMM04,
PMN02,
PMN33,
PMN20,
PMN31T_HKD,
SUB_TOTAL,
NUMBER_OF_PRICE_LIST
FROM (SELECT PMN04,
PMN041,
PMN01,
PMC03,
PMM04,
PMN02,
PMN33,
CASE
WHEN LAG_MTL = PMN04 AND LAG_PO <> PMN01 THEN
PMN33 - LAG_DATE
ELSE
99999
END LAG_DAYS,
CASE
WHEN LEAD_MTL = PMN04 AND LEAD_PO <> PMN01 THEN
LEAD_DATE - PMN33
ELSE
88888
END LEAD_DAYS,
PMN20,
PMN31T_HKD,
SUB_TOTAL,
NUMBER_OF_PRICE_LIST
FROM (SELECT PMN04,
PMN041,
PMN01,
PMC03,
PMM04,
PMN02,
PMN33,
LAG(PMN04, 1, NULL) OVER(ORDER BY PMN04, PMN33) LAG_MTL,
LAG(PMN01, 1, NULL) OVER(ORDER BY PMN04, PMN33) LAG_PO,
LAG(PMN33, 1, NULL) OVER(ORDER BY PMN04, PMN33) LAG_DATE,
LEAD(PMN04, 1, NULL) OVER(ORDER BY PMN04, PMN33) LEAD_MTL,
LEAD(PMN01, 1, NULL) OVER(ORDER BY PMN04, PMN33) LEAD_PO,
LEAD(PMN33, 1, NULL) OVER(ORDER BY PMN04, PMN33) LEAD_DATE,
PMN20,
PMN31T * PMM42 PMN31T_HKD,
PMN20 * PMN31T * PMM42 SUB_TOTAL,
NVL(NUMBER_OF_PRICE_LIST, 1) NUMBER_OF_PRICE_LIST
FROM PMM_FILE
LEFT JOIN PMN_FILE
ON PMM01 = PMN01
LEFT JOIN PMC_FILE
ON PMM09 = PMC01
LEFT JOIN VIEW_NUMBER_OF_PRICE_LIST
ON (PMN04 = PMJ03 AND PMM09 = PMI03)
WHERE PMM18 = 'Y'
AND PMMUD02 = 'Y'
AND PMN33 > GET_FORWARD_DATE(0)--自定義函數,可以拿到當天日期
ORDER BY PMN04, PMN33)
ORDER BY PMN04, PMN33)
WHERE (LAG_DAYS <= 7 OR LEAD_DAYS <= 7)
--AND ROWNUM < 20
ORDER BY PMN04, PMN33