IT
Oracle TimeStamp to NUMBER CONVERT 오라클 타임스탬프 숫자 정수형 변환 예시 / Oracle EXTRACT 예시 / 오라클 추출
agnusdei1207
2022. 7. 25. 17:13
반응형
SMALL
<select id="statisticsOverTimeExcelDown" parameterType="VO" resultType="VO">
/* VO.statisticsOverTimeExcelDown */
<![CDATA[
SELECT AVG(EXTRACT(DAY FROM (END_DATE - STA_DATE)*60*24)) avgTime
, SUM(TO_NUMBER(EXTRACT(DAY FROM (END_DATE - STA_DATE)*60*24))) totalTime
, TO_CHAR(TO_DATE(B.RGST_DT), 'YYYY.MM') rgstDt
FROM t_over_add A
LEFT OUTER JOIN t_over_time B
ON A.OT_SEQ = B.OT_SEQ
AND B.USE_YN = 'Y'
WHERE A.USE_YN = 'Y'
AND TO_CHAR(TO_DATE(B.RGST_DT), 'YYYY.MM') = #{schEtc01}
GROUP BY TO_CHAR(TO_DATE(B.RGST_DT), 'YYYY.MM')
]]>
</select>
1. 종료일 - 시작일 계산 후
2. *60*24 를 통해 분 단위를 추출
3. DAY FROM 이지만 실제 계산된 데이터는 MINUTE, 즉 분 단위라는 사실!
4. 추출된 결과 분단위 정수를 AVG 로 계산한다.
5. 마찬가지로 SUM 으로 계산한다.
반응형
LIST