본문 바로가기
분석/데이터분석

postgreSQL 날짜/시간 함수

by 여우요원 2019. 3. 19.



날짜/시간 함수 정리



-- 날짜 시간 타입으로 캐스팅 


select '20190320'::date, '2019-01-02'::date


select date '2019-03-18'


select to_date('01022019','MMDDYYYY'), to_date('2018-12-25', 'YYYY-MM-DD')


select to_timestamp('2019-01-01 20:12:12', 'YYYY-MM-DD HH:MI:SS')



-- 현재시간 날짜 구하기 


select now(), current_date, current_time 



-- 시간 더하고 빼기 


select '2019-01-01'::date + interval '2 sec', '2019-01-01'::date - interval '2 sec'


select '2019-01-01'::date + interval '2 min', '2019-01-01'::date - interval '2 min'


select '2019-01-01'::date + interval '2 hour', '2019-01-01'::date - interval '2 hour'


select '2019-01-01'::date + interval '2 day', '2019-01-01'::date - interval '2 day'


select '2019-01-01'::date + interval '2 week', '2019-01-01'::date - interval '2 week'


select '2019-01-01'::date + interval '2 month', '2019-01-01'::date - interval '2 month'


select '2019-01-01'::date + interval '2 year', '2019-01-01'::date - interval '2 year'


select ('2019-01-01'::date + interval '2 day') + interval '2 hour'


select now() + (600 * interval '1 sec'), now() + interval '600 sec'


select now(), now() + interval '15h 2m 12s'


-- day of year 구하기 


select extract(doy from now())



-- 시간파트 구하기 


select to_char(now(), 'YYYY-MM-DD HH24:MI:SS')


select to_char(now(), 'MONTH:Month:month:MON:Mon:mon:WW:W:D')



[ Template Patterns for Date/Time Formatting ]

PatternDescription
HHhour of day (01-12)
HH12hour of day (01-12)
HH24hour of day (00-23)
MIminute (00-59)
SSsecond (00-59)
MSmillisecond (000-999)
USmicrosecond (000000-999999)
SSSSseconds past midnight (0-86399)
AM or A.M. or PM or P.M.meridian indicator (uppercase)
am or a.m. or pm or p.m.meridian indicator (lowercase)
Y,YYYyear (4 and more digits) with comma
YYYYyear (4 and more digits)
YYYlast 3 digits of year
YYlast 2 digits of year
Ylast digit of year
IYYYISO year (4 and more digits)
IYYlast 3 digits of ISO year
IYlast 2 digits of ISO year
Ilast digits of ISO year
BC or B.C. or AD or A.D.era indicator (uppercase)
bc or b.c. or ad or a.d.era indicator (lowercase)
MONTHfull uppercase month name (blank-padded to 9 chars)
Monthfull mixed-case month name (blank-padded to 9 chars)
monthfull lowercase month name (blank-padded to 9 chars)
MONabbreviated uppercase month name (3 chars in English, localized lengths vary)
Monabbreviated mixed-case month name (3 chars in English, localized lengths vary)
monabbreviated lowercase month name (3 chars in English, localized lengths vary)
MMmonth number (01-12)
DAYfull uppercase day name (blank-padded to 9 chars)
Dayfull mixed-case day name (blank-padded to 9 chars)
dayfull lowercase day name (blank-padded to 9 chars)
DYabbreviated uppercase day name (3 chars in English, localized lengths vary)
Dyabbreviated mixed-case day name (3 chars in English, localized lengths vary)
dyabbreviated lowercase day name (3 chars in English, localized lengths vary)
DDDday of year (001-366)
DDday of month (01-31)
Dday of week (1-7; Sunday is 1)
Wweek of month (1-5) (The first week starts on the first day of the month.)
WWweek number of year (1-53) (The first week starts on the first day of the year.)
IWISO week number of year (The first Thursday of the new year is in week 1.)
CCcentury (2 digits) (The twenty-first century starts on 2001-01-01.)
JJulian Day (days since January 1, 4712 BC)
Qquarter
RMmonth in Roman numerals (I-XII; I=January) (uppercase)
rmmonth in Roman numerals (i-xii; i=January) (lowercase)
TZtime-zone name (uppercase)
tztime-zone name (lowercase)