Redshift 입문
Jason Myers
Principal Architect
SYSDATE 트랜잭션 시작 시점의 날짜와 시간-- 현재 날짜와 시간 조회
SELECT SYSDATE;
timestamp
============================
2024-01-27 20:05:55.976353
GETDATE() 문장 시작 시점의 날짜와 시간, 괄호 필요-- 현재 날짜와 시간 조회
SELECT GETDATE();
timestamp
============================
2024-01-27 20:06:55.976353
리더 노드 전용 함수에 유의하세요!
AGE보다 DATEDIFF 사용GETDATE/SYSDATE 사용:CURRENT_TIMECURRENT_TIMESTAMPISFINITELOCALTIMELOCALTIMESTAMPNOWTRUNC은 타임스탬프에서 날짜를 반환-- 기준 SYSDATE: 2024-01-27 20:05:55.976353
-- 현재 날짜 조회
SELECT TRUNC(SYSDATE);
2024-01-27
DATE_TRUNC('datepart', timestamp)는 hour, day 등의 datepart로 자름-- 기준 SYSDATE: 2024-01-27 20:05:55.976353
-- minute로 절단
SELECT DATE_TRUNC('minute', SYSDATE);
2024-01-27 20:05:55
DATE_PART(datepart, date or timestamp) -- 기준 SYSDATE: 2024-01-27 20:05:55.976353
-- 현재 월 가져오기
SELECT DATE_PART(month, SYSDATE);
1
month, day, year 외도 반환 가능dayofweek, quarter, timezone-- 기준 SYSDATE: 2024-01-27 20:05:55.976353
-- 요일 번호 가져오기
SELECT DATE_PART(dayofweek, SYSDATE);
6
DATE_CMP(date_1, date_2) 상대 비교
타입별 전용 함수
DATE_CMP_TIMESTAMPDATE_CMP_TIMESTAMPTZTIMESTAMP_CMPTIMESTAMP_CMP_TIMESTAMPTZTIMESTAMPTZ_CMP-- SYSDATE: 2024-01-27 20:05:55.976353 기준으로
-- 테이블의 5개 날짜를 비교
SELECT date_col,
TRUNC(SYSDATE) AS current_date,
DATE_CMP(date_col, SYSDATE)
FROM combined_history_projections
ORDER BY date_col
LIMIT 3;
date_col | current_date | date_cmp
===========|===============|==========
2024-01-26 | 2024-01-27 | -1
2024-01-27 | 2024-01-27 | 0
2024-01-28 | 2024-01-27 | 1
DATEDIFF(datepart, value_1, value_2)-- 1분기 말까지 남은 일수 (기준 SYSDATE: 2024-01-27 20:05:55.976353) SELECT DATEDIFF(day,TRUNC(SYSDATE),'2024-03-31') AS days_diff;days_diff =========== 64
DATEADD(datepart, quantity, value)-- 기준 SYSDATE: 2024-01-27 20:05:55.976353
-- 날짜에 1주 추가
SELECT TRUNC(SYSDATE) AS todays_date,
TRUNC(DATEADD(week, 1, SYSDATE)) AS next_weeks_date;
todays_date | next_weeks_date
============|==================
2024-01-27 | 2024-02-03
-- 월 단위로 1년 추가
SELECT DATEADD(month, 12, '2024-02-29');
2025-02-28 00:00:00
-- 연 단위로 1년 추가
SELECT DATEADD(year, 1, '2024-02-29');
2025-03-01 00:00:00
Redshift 입문