2021-04-22
오라클 내부에서 날짜 데이터를 비교하는 방법을 알아보자. 우선 사용할 방법은 문자 포맷으로 바꾸어주는 TO_CHAR를 이용해서 날짜를 비교할 것이다.
- 예제
사용할 테이블은 SEE_INFO로 내용은 아래와 같다.
- 상황 1
오늘 날짜 04/21 기준으로 생일이 지나지 않은 사람들만 출력하려고 한다.
SELECT * FROM SEE_INFO WHERE TO_CHAR(SYSDATE, 'MM/dd') <= TO_CHAR(BIRTH, 'MM/dd')
코드는 위와 같이 설정해주면 되며, 내용으로는 현재 날짜 기준으로 월/일 보다 생일의 월/일이 크거나 같은( <= ) 사람들을 출력하는 코드이다. 결과는 아래와 같이 나온다.
- 상황 2
오늘 날짜 04/21 기준으로 생일이 지난 사람들만 출력하려고 한다.
SELECT * FROM SEE_INFO WHERE TO_CHAR(SYSDATE, 'MM/dd') >= TO_CHAR(BIRTH, 'MM/dd');
사실 부등호만 반대로 변경해주면 되며, 결과는 아래와 같이 나온다.
메인 이미지 출처: Photo by Prescott Horn on Unsplash