日期范围查询统计


--Daily Total
Daily Total = N1 + N2 + N3...
--Month Running Total Current Year
SELECT SUM(Daily Total) FROM SITREP_TABLE
JOIN SITREP_MASTER ON
SITREP_TABLE.SR_MASTER_ID = SITREP_MASTER.SR_MASTER_ID
WHERE  TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')>= TO_DATE(TO_CHAR(TRUNC(SYSDATE,'MONTH'),'YYYY-MM-DD'),'YYYY-MM-DD')
AND TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')<= TO_DATE(TO_CHAR(SYSDATE,'YYYY-MM-DD'),'YYYY-MM-DD')
AND SR_TREE_ID = ?
GROUP BY TEAM
--Month Running Total Last Year
SELECT SUM(Daily Total) FROM SITREP_TABLE
JOIN SITREP_MASTER ON
SITREP_TABLE.SR_MASTER_ID = SITREP_MASTER.SR_MASTER_ID
WHERE  TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')>= TO_DATE(TO_CHAR(TRUNC(ADD_MONTHS(SYSDATE,-12),'MONTH'),'YYYY-MM-DD'),'YYYY-MM-DD')
AND TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')<= TO_DATE(TO_CHAR(ADD_MONTHS(SYSDATE,-12),'YYYY-MM-DD'),'YYYY-MM-DD')
AND SR_TREE_ID = ?
GROUP BY TEAM
--Month Total Last Year
SELECT SUM(Daily Total) FROM SITREP_TABLE
JOIN SITREP_MASTER ON
SITREP_TABLE.SR_MASTER_ID = SITREP_MASTER.SR_MASTER_ID
WHERE  TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')>= TO_DATE(TO_CHAR(TRUNC(ADD_MONTHS(SYSDATE,-12),'MONTH'),'YYYY-MM-DD'),'YYYY-MM-DD')
AND TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')<= TO_DATE(TO_CHAR(LAST_DAY(ADD_MONTHS(SYSDATE,-12)),'YYYY-MM-DD'),'YYYY-MM-DD')
AND SR_TREE_ID = ?
GROUP BY TEAM
--Running Total Current Year
SELECT SUM(Daily Total) FROM SITREP_TABLE
JOIN SITREP_MASTER ON
SITREP_TABLE.SR_MASTER_ID = SITREP_MASTER.SR_MASTER_ID
WHERE  TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')>= TO_DATE(TO_CHAR(TRUNC(SYSDATE,'YEAR'),'YYYY-MM-DD'),'YYYY-MM-DD')
AND TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')<= TO_DATE(TO_CHAR(SYSDATE,'YYYY-MM-DD'),'YYYY-MM-DD')
AND SR_TREE_ID = ?
GROUP BY TEAM
--Running Total Last Year
SELECT SUM(Daily Total) FROM SITREP_TABLE
JOIN SITREP_MASTER ON
SITREP_TABLE.SR_MASTER_ID = SITREP_MASTER.SR_MASTER_ID
WHERE  TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')>= TO_DATE(TO_CHAR(TRUNC(ADD_MONTHS(SYSDATE,-12),'YEAR'),'YYYY-MM-DD'),'YYYY-MM-DD')
AND TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')<= TO_DATE(TO_CHAR(ADD_MONTHS(SYSDATE,-12),'YYYY-MM-DD'),'YYYY-MM-DD')
AND SR_TREE_ID = ?
GROUP BY TEAM
--Previous Month Total
SELECT SUM(Daily Total) FROM SITREP_TABLE
JOIN SITREP_MASTER ON
SITREP_TABLE.SR_MASTER_ID = SITREP_MASTER.SR_MASTER_ID
WHERE  TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')>= TO_DATE(TO_CHAR(TRUNC(ADD_MONTHS(SYSDATE,-1),'MONTH'),'YYYY-MM-DD'),'YYYY-MM-DD')
AND TO_DATE(TO_CHAR(DT_SITREP,'YYYY-MM-DD'),'YYYY-MM-DD')<= TO_DATE(TO_CHAR(LAST_DAY(ADD_MONTHS(SYSDATE,-1)),'YYYY-MM-DD'),'YYYY-MM-DD')
AND SR_TREE_ID = ?
GROUP BY TEAM

猜你喜欢

转载自youcp999.iteye.com/blog/2319923