2
我試圖讓使用來自從指定日期範圍涵蓋Oracle數據S曲線分析,查詢數據
我的查詢看起來像這樣,
SELECT LEVEL WEEK_NUM_INCR,
TO_CHAR (start_date + (LEVEL - 1) * 7, 'WW') WEEK_POSITION,
/* WEEK POSITION FOR THE WHOLE YEAR */
TO_CHAR (start_date + (LEVEL - 1) * 7, 'MM/DD/YYYY') START_WEEK_DATE,
TO_CHAR (start_date + (LEVEL) * 7, 'MM/DD/YYYY') END_WEEK_DATE,
(SELECT SUM (ONSITE_UPD_QTY)
FROM [email protected]_SITEMON_LINK
WHERE UPD_DATE BETWEEN RS.start_date AND RS.end_date
AND PROJECT_NAME IN (SELECT PROJECT_NAME
FROM PROJECT
WHERE PROJECT_NO = RS.JOB_NAME))
ONSITEQTY
FROM (SELECT PS.PROJECT_START_DT start_date,
PS.JOB_NAME JOB_NAME,
PS.PROJECT_END_DT end_date
FROM PROJECT_SPAN PS
WHERE PS.JOB_NAME = 'W-14026') RS
CONNECT BY start_date + (LEVEL - 1) * 7 < end_date;
所以上該PROJECT_SPAN表中的內容,
PROJECT_START_DT PROJECT_END_DT JOB_NAME
1/1/2015 2/1/2015 W-14026
而且在DTL_ERC_UPD @ WELTES_SITEMON_LINK內容,
PROJECT_NAME UPD_DATE ONSITE_UPD_QTY
---------------------------------------------------
SMSMILLHOUSE 2/5/2015 12:00:01 AM 2
SMSSUGARWHOUSE 2/5/2015 12:00:01 AM 2
SMSMILLHOUSE 2/4/2015 12:00:01 AM 4
SMSMILLHOUSE 2/4/2015 12:00:01 AM 6
IGGMILLHOUSE 2/4/2015 12:00:01 AM 4
IGGMILLHOUSE 2/4/2015 12:00:01 AM 6
所以連接表項目包含,
PROJECT_NO PROJECT_NAME
-----------------------
W-14026 SMSMILLHOUSE
W-14026 SMSSUGARWHOUSE
當我查詢該SQL我得到這個只有
WEEK_NUM_INCR WEEK_POSITION START_WEEK_DATE END_WEEK_DATE ONSITEQTY
1.00 01 01/01/2015 01/08/2015
2.00 02 01/08/2015 01/15/2015
3.00 03 01/15/2015 01/22/2015
4.00 04 01/22/2015 01/29/2015
5.00 05 01/29/2015 02/05/2015
預期的輸出是
WEEK_NUM_INCR WEEK_POSITION START_WEEK_DATE END_WEEK_DATE ONSITEQTY
1.00 01 01/01/2015 01/08/2015 0
2.00 02 01/08/2015 01/15/2015 0
3.00 03 01/15/2015 01/22/2015 0
4.00 04 01/22/2015 01/29/2015 0
5.00 05 01/29/2015 02/05/2015 14
請幫我我的查詢錯過了什麼?
非常感謝
THanks qualtgh ...在這種情況下IGGMILLHOUSE不計算在查詢中,因爲只涵蓋SMSMILLHOUSE和SMSSUGARWHOUSE .. – 2015-02-10 01:57:50
@KonzMama:是的,我明白了。 IGGMILLHOUSE不適合。二月,五日不適合。只有兩條記錄適合於2月4日的SMSMILLHOUSE。總計10。這是預期的嗎? – Qualtagh 2015-02-10 03:34:40
是它的權利,但這個查詢是否符合數據更改?因此用戶只需輸入PROJECT_SPAN表中的PROJECT_START_DATE和PROJECT_END_DT,並且輸出應該隨着用戶在DTL_ERC_UPD內輸入更多數據而動態更改。 – 2015-02-10 06:26:33