ORACLE SQL: 创建一个只从特定日期获取数据的视图
ORACLE SQL: Making a view that only fetches data from specific date
我想将我的观点更改为仅接收特定日期的数据,例如 1 个月前,并忘记所有旧数据。
SELECT trunc(TIME) TIME,SIDSTE_AGENT,TEAM_CODE,CDN,TLFNR,
OPTAGELSE,MAX(DECODE(QUESTION_ID, 201, KARAKTER)) AS SP1
FROM KS_DRIFT.KT_BESVARELSE besv
INNER JOIN KS_DRIFT.KT_KARAKTER kara
ON besv.EKSTERN_ID = kara.BESVARELSE_ID
AND besv.TYPE = kara.TYPE
LEFT JOIN KS_DRIFT.V_AGENT_ALLOCATION
ON FØRSTE_AGENT = AGENT_INITIALS
AND TIME BETWEEN ALLOCATION_START
AND NVL(ALLOCATION_END, SYSDATE)
WHERE CDN NOT IN ( 5400, 7635, 8882,8200,8210,8702) AND besv.TYPE = 0
GROUP BY TIME, SIDSTE_AGENT, TEAM_CODE, CDN, TLFNR, OPTAGELSE
ORDER BY TIME desc
这可能有效:
SELECT
trunc(TIME) TIME,
SIDSTE_AGENT,
TEAM_CODE,
CDN,
TLFNR,
OPTAGELSE,
MAX(DECODE(QUESTION_ID, 201, KARAKTER)) AS SP1
FROM KS_DRIFT.KT_BESVARELSE besv
INNER JOIN KS_DRIFT.KT_KARAKTER kara ON besv.EKSTERN_ID = kara.BESVARELSE_ID AND besv.TYPE = kara.TYPE
LEFT JOIN KS_DRIFT.V_AGENT_ALLOCATION ON FØRSTE_AGENT = AGENT_INITIALS AND TIME BETWEEN ALLOCATION_START AND NVL(ALLOCATION_END, SYSDATE)
WHERE CDN NOT IN ( 5400, 7635, 8882,8200,8210,8702) AND besv.TYPE = 0
AND time > SYSDATE - interval '1' month
GROUP BY TIME, SIDSTE_AGENT, TEAM_CODE, CDN, TLFNR, OPTAGELSE
ORDER BY TIME desc
给你
SELECT
trunc(TIME) TIME,
SIDSTE_AGENT,
TEAM_CODE,
CDN,
TLFNR,
OPTAGELSE,
MAX(DECODE(QUESTION_ID, 201, KARAKTER)) AS SP1
FROM KS_DRIFT.KT_BESVARELSE besv
INNER JOIN KS_DRIFT.KT_KARAKTER kara ON besv.EKSTERN_ID = kara.BESVARELSE_ID AND besv.TYPE = kara.TYPE
LEFT JOIN KS_DRIFT.V_AGENT_ALLOCATION ON FØRSTE_AGENT = AGENT_INITIALS AND TIME BETWEEN ALLOCATION_START AND NVL(ALLOCATION_END, SYSDATE)
WHERE CDN NOT IN ( 5400, 7635, 8882,8200,8210,8702) AND besv.TYPE = 0
AND trunc(TIME) >= ADD_MONTHS(trunc(sysdate),-1)
GROUP BY TIME, SIDSTE_AGENT, TEAM_CODE, CDN, TLFNR, OPTAGELSE
ORDER BY TIME desc
我想将我的观点更改为仅接收特定日期的数据,例如 1 个月前,并忘记所有旧数据。
SELECT trunc(TIME) TIME,SIDSTE_AGENT,TEAM_CODE,CDN,TLFNR,
OPTAGELSE,MAX(DECODE(QUESTION_ID, 201, KARAKTER)) AS SP1
FROM KS_DRIFT.KT_BESVARELSE besv
INNER JOIN KS_DRIFT.KT_KARAKTER kara
ON besv.EKSTERN_ID = kara.BESVARELSE_ID
AND besv.TYPE = kara.TYPE
LEFT JOIN KS_DRIFT.V_AGENT_ALLOCATION
ON FØRSTE_AGENT = AGENT_INITIALS
AND TIME BETWEEN ALLOCATION_START
AND NVL(ALLOCATION_END, SYSDATE)
WHERE CDN NOT IN ( 5400, 7635, 8882,8200,8210,8702) AND besv.TYPE = 0
GROUP BY TIME, SIDSTE_AGENT, TEAM_CODE, CDN, TLFNR, OPTAGELSE
ORDER BY TIME desc
这可能有效:
SELECT
trunc(TIME) TIME,
SIDSTE_AGENT,
TEAM_CODE,
CDN,
TLFNR,
OPTAGELSE,
MAX(DECODE(QUESTION_ID, 201, KARAKTER)) AS SP1
FROM KS_DRIFT.KT_BESVARELSE besv
INNER JOIN KS_DRIFT.KT_KARAKTER kara ON besv.EKSTERN_ID = kara.BESVARELSE_ID AND besv.TYPE = kara.TYPE
LEFT JOIN KS_DRIFT.V_AGENT_ALLOCATION ON FØRSTE_AGENT = AGENT_INITIALS AND TIME BETWEEN ALLOCATION_START AND NVL(ALLOCATION_END, SYSDATE)
WHERE CDN NOT IN ( 5400, 7635, 8882,8200,8210,8702) AND besv.TYPE = 0
AND time > SYSDATE - interval '1' month
GROUP BY TIME, SIDSTE_AGENT, TEAM_CODE, CDN, TLFNR, OPTAGELSE
ORDER BY TIME desc
给你
SELECT
trunc(TIME) TIME,
SIDSTE_AGENT,
TEAM_CODE,
CDN,
TLFNR,
OPTAGELSE,
MAX(DECODE(QUESTION_ID, 201, KARAKTER)) AS SP1
FROM KS_DRIFT.KT_BESVARELSE besv
INNER JOIN KS_DRIFT.KT_KARAKTER kara ON besv.EKSTERN_ID = kara.BESVARELSE_ID AND besv.TYPE = kara.TYPE
LEFT JOIN KS_DRIFT.V_AGENT_ALLOCATION ON FØRSTE_AGENT = AGENT_INITIALS AND TIME BETWEEN ALLOCATION_START AND NVL(ALLOCATION_END, SYSDATE)
WHERE CDN NOT IN ( 5400, 7635, 8882,8200,8210,8702) AND besv.TYPE = 0
AND trunc(TIME) >= ADD_MONTHS(trunc(sysdate),-1)
GROUP BY TIME, SIDSTE_AGENT, TEAM_CODE, CDN, TLFNR, OPTAGELSE
ORDER BY TIME desc