프로그래머스 SQL 문제를 풀다가 날짜 포맷팅 문제가 나왔다.
요새 PostgreSQL만 쓰다보니 MySQL 문법을 다 까먹어서 날짜 포맷팅 관련해서 정리해보려고 한다.
MySQL
DATE_FORMAT(날짜, '포맷')
DATE_FORMAT() 함수를 사용한다. 아래 표에 자주 쓰이는 포맷 종류를 정리했다.
포맷 | 설명 |
%Y | 년도(4자리) |
%y | 년도(2자리) |
%c | 월 |
%d | 일(2자리) |
%e | 일(1자리) |
%H | 시(24시 기준, 00~23) |
%h | 시(12시 기준, 01~12) |
%i | 분 |
%s, %S | 초 |
%T | hh:mm:ss |
Oracle/PostgreSQL
// 날짜에서 원하는 부분만 추출할 때 주로 사용
TO_CHAR(날짜, '포맷')
// 문자열 타입의 컬럼을 날짜 타입으로 변환할 때 사용
TO_DATE(날짜, '포맷')
주로 TO_CHAR() 함수를 사용하게 된다. PostgreSQL과 오라클은 MySQL과 달리 대/소문자 구분이 없다.
아래 표에 자주 쓰이는 포맷 종류를 정리했다.
포맷 | 설명 |
YYYY | 년도(4자리) |
YY | 년도(2자리) |
MM | 월 |
DD | 일 |
HH24 | 시(24시 기준, 00~23) |
HH12, HH | 시(12시 기준, 01~12) |
MI | 분 |
SS | 초 |
'Backend > Database' 카테고리의 다른 글
PostgreSQL - pgcrypto 모듈을 사용한 패스워드 및 문자열 암호화 (0) | 2021.12.03 |
---|---|
Database - ORDER BY 커스텀 정렬 (0) | 2021.09.14 |
Database - 문자열 포함 여부 (0) | 2021.05.16 |
Database - 널(NULL)값 처리 (0) | 2021.05.16 |
PostgreSQL - 현재 시퀀스 값 변경 (0) | 2021.05.03 |