https://school.programmers.co.kr/learn/courses/30/lessons/132203?language=mysql
프로그래머스 문제를 풀다가 이번 기회에 Oracle 날짜 관련 타입과 EXTRACT 함수 사용 시 주의사항을 간략하게 정리하려고 한다.
DATE
TIMESTAMP
연, 월, 일 추출:
EXTRACT(YEAR/MONTH/DAY FROM ...) 사용 시 정상 동작시, 분, 초 추출:
EXTRACT(HOUR/MINUTE/SECOND FROM DATE) 사용 시 오류 발생 EXTRACT(HOUR/MINUTE/SECOND FROM TIMESTAMP)가 정상 작동 TO_CHAR(DATE, 'HH24'), TO_CHAR(DATE, 'MI'), TO_CHAR(DATE, 'SS')를 사용하거나,CAST(DATE AS TIMESTAMP) 후 EXTRACT 사용| 데이터 타입 | 저장 내용 | EXTRACT 사용 가능 (연/월/일) | EXTRACT 사용 가능 (시/분/초) |
|---|---|---|---|
| DATE | 연, 월, 일, 시, 분, 초 | 가능 | 불가능 (ORA-30076 오류) |
| TIMESTAMP | DATE 정보 + 소수점 이하 초 | 가능 | 가능 |