// INTERVAL
- 시간 간격을 나타내는 DATA TYPE
- 날짜 및 시간 연산에 활용
- 날짜(DATE), 시간(TIME), 타임스탬프(TIMESTAMP) 타입의 데이터 연산이 가능하다.
- INTERVAL '크기 단위' 형식으로 표현한다.
INTERVAL '20 days'
INTERVAL '1 year'
INTERVAL '1 hours'
INTERVAL '30 minutes'
- 여러 단위를 이어서 사용할 수 있다.
INTERVAL '1 year 1 months 7 days'
INTERVAL '3hours 5minutes'
쿼리를 짜다 보면, 날짜를 연장하고자 할 때가 있을 것이다.
나는 사용자가 비밀번호를 3개월 뒤 변경하겠다고 선택했을 때,
비밀번호 변경 제한일자를 90일 연장하기 위해 INTERVAL을 사용하였다.
UPDATE
USER
SET PW_CHNG_DEADLINE = TO_CHAR(TO_DATE(PW_CHNG_DEADLINE, 'YYYYMMDD') + INTERVAL '90 days', 'YYYYMMDD') /* 비밀번호변경제한일자 */
, LAST_CHNG_ID = #{lastChngId } /* 최종변경자ID */
, LAST_CHNG_DT = NOW() /* 최종변경일시 */
WHERE USER_ID = #{userID } /* 로그인ID */
RETURNING PW_CHNG_DEADLINE
'데이터베이스(DB) > PostgreSQL' 카테고리의 다른 글
[PostgreSQL] UUID 생성하기 (0) | 2024.03.01 |
---|---|
[PostgreSQL] Node.js와 연결하기 (0) | 2024.02.28 |
스프링 부트와 PostgreSQL 연동 (0) | 2023.08.14 |
PostgreSQL 설치 및 환경설정 (0) | 2023.08.07 |