본문 바로가기
Database/PostgreSQL

[PostgreSQL] TimeStamp, Date 날짜 형식 변환

by Devyne 2025. 5. 8.
반응형

 

기존 MySQL 을 쓸 때 DATE_FORMAT 함수를 통해서 날짜 데이터에 형식을 변환했다. 

근데 PostgreSQL에서 쓸려니 DATE_FORMAT 함수가 없다 (엥??)

그래서 찾아보니 TO_CHAR 함수를 통해 변환이 가능하다는 걸 알게됐다. 

이에 대해서 간단히 정리해볼려고 한다. 


함수 사용법

 TO_CHAR(date_value, 'format_string')
  • date_value : DATE, TIMESTAMP, TIME 등 날짜/시간 데이터
  • ‘format_string’ : 날짜 포맷

자주 사용하는 포맷 코드

YYYY 4자리 연도 2025
YY 2자리 연도 25
MM 2자리 월 05
MON 월 이름 (영문 약자) MAY
MONTH 월 이름 (영문 전체) MAY
DD 2자리 일 08
D 요일 (숫자: 1=일요일) 5
DAY 요일 이름 THURSDAY
HH24 24시간제 시 14
HH12 12시간제 시 02
MI 30
SS 45

 

예시

1. 날짜를 YYYY-MM-DD 형식으로 출력

SELECT TO_CAHR(NOW(), 'YYYY-MM-DD');

 

2. 2025년 05월 08일 형식 

SELECT TO_CHAR(NOW(), 'YYYY년 MM월 DD일');

 

3. 시간 포함 : 2025-05-08 14:30:45

SELECT TO_CHAR(NOW(), 'YYYY-MM-DD HH24:MI:SS');

 

4. 요일 포함 : 2025-05-08 (THURSDAY)

SELECT TO_CHAR(NOW(), 'YYYY-MM-DD (DAY)');

주의할 점 

날짜를 TO_CHAR()로 변환한 후에는 문자열이 되므로, 이후 날짜 계산이나 비교 연산에는 사용할 수 없다. 이 점 주의하자

반응형

'Database > PostgreSQL' 카테고리의 다른 글

[PostgreSQL] 테이블 생성하기  (0) 2025.05.07