728x90
TO_DATE()함수는 where 절에서 자주 사용된다.
다음과 같은 경우를 보자

비교 연산자 왼쪽 birthdate 칼럼의 데이터 유형은 DATE이다.
비교 연산자 우측에 있는 문자는 보기엔 날짜이지만, 데이터 타입은 문자이다.
비교 연산자 우측 문자를 날짜 타입으로 바꾸기 위해 TO_DATE()함수를 사용한다.

TO_DATE(01-01-92, 'dd-mm-yy')로 입력하면 아무 결과가 나오지 않는다.

오라클에서 yy는 무조건 현재 세기를 기준으로 검색하기 때문에 2092년생을 찾으려니 나오지 않는 것이다.
해결방법으론 yy 대신 rr을 사용하면 된다.
rr은 년도를 두 자리로 표현하고 싶을 때 2000년 기준 50 ~ 99는 이전 세기로, 00 ~ 49는 현재 세기로 검색한다.

728x90
'SQL > oracle' 카테고리의 다른 글
| oracle SQL - on Join (Non Equi, Self, 3 Way) (0) | 2023.04.25 |
|---|---|
| oracle SQL - 조인 개념 (0) | 2023.04.25 |
| oracle SQL - 데이터 유형의 변환 (TO_NUMBER()) (0) | 2023.03.28 |
| oracle SQL - 날짜 함수 (0) | 2023.03.28 |
| oracle SQL - DML 매우매우매우 기초 (insert, update, delete) (0) | 2022.12.08 |