"오라클 시간계산"의 두 판 사이의 차이
DB CAFE
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 계산하기" | ||
40번째 줄: | 40번째 줄: | ||
</source> | </source> | ||
− | ## 소요시간 ## | + | ##소요시간## |
+ | * to_date() * 24 * 60 * 60 = 초 (계산된값) | ||
+ | |||
<source lang=sql> | <source lang=sql> | ||
+ | -- 해당쿼리가 실행 소요시간 조회 | ||
SELECT min(first_refresh_time) | SELECT min(first_refresh_time) | ||
, max(last_refresh_time) | , max(last_refresh_time) |
2018년 11월 14일 (수) 15:29 판
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;
- 소요시간##
- to_date() * 24 * 60 * 60 = 초 (계산된값)
-- 해당쿼리가 실행 소요시간 조회
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' -- ''