[Oracle]현재시간-(DATE타입) 시간차 구하는 쿼리
시간을 구하는 쿼리의 Column Type은 DATE 타입입니다.
아래의 예는 Column Type이 TIMESTAMP일때 변환하여 사용합니다.
SELECT
ROUND(((SYSDATE - TO_DATE(TO_CHAR(START_TIME, 'YYYY-MM-DD HH24:MI:SS'), 'YYYY-MM-DD HH24:MI:SS'))),3) AS DIFF
FROM TEMP_TABLE T
WHERE T.NAME = '1';
Column Type이 DATE 타입이면( START_TIME => DATE)
SELECT
ROUND(((SYSDATE - START_TIME))),3) AS DIFF
FROM TEMP_TABLE T
WHERE T.NAME = '1';
구해지는 시간차는 DATE(일)이며
시간(HOUR)을 구할 경우는
SELECT
ROUND(((SYSDATE - TO_DATE(TO_CHAR(START_TIME, 'YYYY-MM-DD HH24:MI:SS'), 'YYYY-MM-DD HH24:MI:SS'))*24),3) AS DIFF
FROM TEMP_TABLE T
WHERE T.NAME = '1';
분(MINUTE)을 구할 경우는
SELECT
ROUND(((SYSDATE - TO_DATE(TO_CHAR(START_TIME, 'YYYY-MM-DD HH24:MI:SS'), 'YYYY-MM-DD HH24:MI:SS'))*24*60),3) AS DIFF
FROM TEMP_TABLE T
WHERE T.NAME = '1';
초(SECOND)를 구할 경우는
SELECT
ROUND(((SYSDATE - TO_DATE(TO_CHAR(START_TIME, 'YYYY-MM-DD HH24:MI:SS'), 'YYYY-MM-DD HH24:MI:SS'))*24*60*60),3) AS DIFF
FROM TEMP_TABLE T
WHERE T.NAME = '1';
쿼리상에서 시간차를 구하기 위해서는 예시들과 같은 쿼리를 사용합니다.
DATE 타입의 쿼리일때도 해당 단위만큼 시간을 곱합니다.