반응형
기존 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 |
---|