→ 기초
SELECT SYSDATE FROM DUAL; -- 24/02/27
SELECT SYSDATE + 7 AS "One Week Later" FROM DUAL; -- 24/03/05
SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') AS "Formatted Date" FROM DUAL;
-- 2024-02-27 00:27:13
→ 두 일자 간 차이 구하기
SELECT SYSDATE,
TO_DATE('2024-12-31', 'YYYY-MM-DD') AS "Target Date",
TO_DATE('2024-12-31', 'YYYY-MM-DD') - SYSDATE AS "Days Until Target"
FROM DUA
→ 결과 포맷 변형하기
-- (시간만 반환 (24시간포멧), ex> 16:53:43);
SELECT TO_CHAR(SYSDATE, 'HH24:MI:SS') FROM DUAL;
-- (시간만 반환, ex> 04:53:43);
SELECT TO_CHAR(SYSDATE, 'HH:MI:SS') FROM DUAL;
-- (날짜만 반환, ex> 20140416)
SELECT TO_CHAR(SYSDATE, 'YYYYMMDD') FROM DUAL;
→ 이번주의 각 일자 구하기
-- 이번주 주간날짜
SELECT SYSDATE 오늘
,TRUNC(sysdate,'iw') 월
,TRUNC(sysdate,'iw')+1 화
,TRUNC(sysdate,'iw')+2 수
,TRUNC(sysdate,'iw')+3 목
,TRUNC(sysdate,'iw')+4 금
,TRUNC(sysdate,'iw')+5 토
,TRUNC(sysdate,'iw')+6 일
FROM DUAL;
→ 올해 연도 추출하기
SELECT TO_CHAR(EXTRACT(YEAR FROM SYSDATE)) AS YEAR
FROM DUAL; -- 2024
⇒ 실무에서 매우 많이 쓰인다. SYSDATE의 복잡한 것까지 빈번히 나오기 때문에 자주 쿼리 공부를 하는 것이 좋을 것 같다.