"오라클 시간계산"의 두 판 사이의 차이
DB CAFE
(새 문서: 일자 계산 = DateTime - 1 = 1일 전 (예: 5일 전 = DateTime - 5) 시간 계산 = DateTime - 1/24 = 1시간 전 [24 = 24...) |
|||
7번째 줄: | 7번째 줄: | ||
초 계산 = DateTime - 1/(24*60*60) = 1초 전 [24 = 24시간, 60 = 60분, 60 = 60초] | 초 계산 = DateTime - 1/(24*60*60) = 1초 전 [24 = 24시간, 60 = 60분, 60 = 60초] | ||
(예: 5초 전 = DateTime - 5/(24*60*60)) | (예: 5초 전 = DateTime - 5/(24*60*60)) | ||
− | + | ## 시간 계산 ## | |
<source lang=sql> | <source lang=sql> | ||
SELECT '현재 시각 : ' || TO_CHAR(SYSDATE, 'yyyymmdd hh24:mi:ss') AS "D,T,M,S 계산하기" | SELECT '현재 시각 : ' || TO_CHAR(SYSDATE, 'yyyymmdd hh24:mi:ss') AS "D,T,M,S 계산하기" | ||
38번째 줄: | 38번째 줄: | ||
UNION ALL | UNION ALL | ||
SELECT ' 5분 전 : ' || TO_CHAR(SYSDATE - 5/(24*60), 'yyyymmdd hh24:mi:ss') FROM DUAL; | SELECT ' 5분 전 : ' || TO_CHAR(SYSDATE - 5/(24*60), 'yyyymmdd hh24:mi:ss') FROM DUAL; | ||
+ | </source> | ||
+ | |||
+ | ## 소요시간 ## | ||
+ | <source lang=sql> | ||
+ | SELECT min(first_refresh_time) | ||
+ | , max(last_refresh_time) | ||
+ | , (to_date(to_char(max(last_refresh_time),'hh24miss'),'hh24miss') - | ||
+ | to_date(to_char(min(first_refresh_time),'hh24miss'),'hh24miss') | ||
+ | ) * (24*60) AS "소요시간(m)" | ||
+ | FROM V$SQL_MONITOR | ||
+ | WHERE SQL_ID = 'awxb9gjc12tdj' -- '' | ||
</source> | </source> |
2018년 11월 14일 (수) 15:27 판
thumb_up 추천메뉴 바로가기
- DBA { Oracle DBA 명령어 > DBA 초급 과정 > DBA 고급 과정 }
- 튜닝 { 오라클 튜닝 목록 }
- 모델링 { 데이터 모델링 가이드 }
일자 계산 = DateTime - 1 = 1일 전
(예: 5일 전 = DateTime - 5)
시간 계산 = DateTime - 1/24 = 1시간 전 [24 = 24시간]
(예: 5시간 전 = DateTime - 5/24)
분 계산 = DateTime - 1/(24*60) = 1분 전 [24 = 24시간, 60 = 60분]
(예: 5분 전 = DateTime - 5/(24*60))
초 계산 = DateTime - 1/(24*60*60) = 1초 전 [24 = 24시간, 60 = 60분, 60 = 60초]
(예: 5초 전 = DateTime - 5/(24*60*60))
- 시간 계산 ##
SELECT '현재 시각 : ' || TO_CHAR(SYSDATE, 'yyyymmdd hh24:mi:ss') AS "D,T,M,S 계산하기"
FROM DUAL
UNION ALL
SELECT ' 1일 전 : ' || TO_CHAR(SYSDATE - 1, 'yyyymmdd hh24:mi:ss') FROM DUAL
UNION ALL
SELECT '현재 시각 : ' || TO_CHAR(SYSDATE, 'yyyymmdd hh24:mi:ss') AS "D,T,M,S 계산하기"
FROM DUAL
UNION ALL
SELECT ' 5일 전 : ' || TO_CHAR(SYSDATE - 5, 'yyyymmdd hh24:mi:ss') FROM DUAL
UNION ALL
SELECT '현재 시각 : ' || TO_CHAR(SYSDATE, 'yyyymmdd hh24:mi:ss') AS "D,T,M,S 계산하기"
FROM DUAL
UNION ALL
SELECT ' 1시간 전 : ' || TO_CHAR(SYSDATE - 1/24, 'yyyymmdd hh24:mi:ss') FROM DUAL
UNION ALL
SELECT '현재 시각 : ' || TO_CHAR(SYSDATE, 'yyyymmdd hh24:mi:ss') AS "D,T,M,S 계산하기"
FROM DUAL
UNION ALL
SELECT ' 5시간 전 : ' || TO_CHAR(SYSDATE - 5/24, 'yyyymmdd hh24:mi:ss') FROM DUAL
UNION ALL
SELECT '현재 시각 : ' || TO_CHAR(SYSDATE, 'yyyymmdd hh24:mi:ss') AS "D,T,M,S 계산하기"
FROM DUAL
UNION ALL
SELECT ' 1분 전 : ' || TO_CHAR(SYSDATE - 1/(24*60), 'yyyymmdd hh24:mi:ss') FROM DUAL
UNION ALL
SELECT '현재 시각 : ' || TO_CHAR(SYSDATE, 'yyyymmdd hh24:mi:ss') AS "D,T,M,S 계산하기"
FROM DUAL
UNION ALL
SELECT ' 5분 전 : ' || TO_CHAR(SYSDATE - 5/(24*60), 'yyyymmdd hh24:mi:ss') FROM DUAL;
- 소요시간 ##
SELECT min(first_refresh_time)
, max(last_refresh_time)
, (to_date(to_char(max(last_refresh_time),'hh24miss'),'hh24miss') -
to_date(to_char(min(first_refresh_time),'hh24miss'),'hh24miss')
) * (24*60) AS "소요시간(m)"
FROM V$SQL_MONITOR
WHERE SQL_ID = 'awxb9gjc12tdj' -- ''