이번에는 SQL을 풀다가 DATE 또는 DATETIME 형식의 값을 지정된 형식의 문자열로 변환하는 데 사용되는 DATE_FORMAT함수에 대해서 알아보려고 합니다. 바로 사용법을 보도록 하겠습니다!
DATE_FORMAT 함수 사용법
테이블 구조
테이블의 구조는 이렇습니다. book_id와 published_date가 있습니다. published_date의 Type 은 DATE입니다.
우리는 DATE_FORMAT을 사용해서 published_date를 다양하게 표현할 수 있습니다.
1. DATE_FORMAT(published_date, '%Y-%m-%d')를 통한 변환
SELECT
book_id,
DATE_FORMAT(published_date, '%Y-%m-%d') AS published_date
FROM BOOK
2. DATE_FORMAT(published_date, '%Y 년 %m월 %d일')를 통한 변환
SELECT
book_id,
DATE_FORMAT(published_date, '%Y년 %m월 %d일') AS published_date
FROM BOOK
3. DATE_FORMAT(published_date, '%Y-%m-%d %r')를 통한 변환
SELECT
book_id,
DATE_FORMAT(published_date, '%Y-%m-%d %r') AS published_date
FROM BOOK
DATE_FORMAT 표
이렇게 저희는 DATE_FORMAT을 사용해서 다양하게 값들을 다양하게 바꿀 수 있습니다. 원하는데로 데이터를 커스텀하기 위해서는 우리가 알아두면 유용한 표가 있습니다. 아래의 사이트를 가면 확인 할 수 있습니다.
https://www.w3schools.com/sql/func_mysql_date_format.asp
영문으로 되어있다보니 불편할 수 있다고 생각이들어 제가 간단히 표로 정리해보았습니다.
FORMAT | 설명 | FORMAT | 설명 |
%a | 짧은 요일(Sun, Mon ...) | %i | 분(00, 01, ... 59) |
%b | 짧은 월(Jen, Feb ...) | %l(소문자 l) | 12시간 형태 (1, 2, ... 12) |
%c | 숫자 월(1, 2, 3 ...) | %y | 2자리 연도 (99, 00, 01) |
%d | 일자 (00, 01, 02 ...) | %Y | 4자리 연도 (2023, 2024) |
%D | 월 (1st, 2nd, 3rd ...) | %S, %s | 초 |
%e | Day 일(0, 1, 2 ...) | %w | Day of Week(0, 1, ...6) 0 = 일요일 |
%H | 24시간 형태 (00, 01, ... 24) | %r | hh:mm:ss AM, PM |
%h | 12시간 형태(01, 02, ... 12) | %p | AM, PM |
%I(대문자 i) | 12시간 형태 (01, 02, ... 12) | %T | hh:mm:ss |
이렇게 있습니다. 더 많은 자료는 위의 링크를 참고하시면 좋을 것 같습니다.
REFERENCE
https://www.w3schools.com/sql/func_mysql_date_format.asp
반응형
'SQL' 카테고리의 다른 글
[MySQL] MySQL NULL 처리하기 (IFNULL, COALESCE, CASE, IF...) (0) | 2024.01.30 |
---|---|
[프로그래머스] 12세 이하인 여자 환자 목록 출력하기 MySQL (0) | 2024.01.29 |
[프로그래머스] 조건에 맞는 도서 리스트 출력하기 MySQL (4) | 2024.01.27 |
[프로그래머스] 평균 일일 대여 요금 구하기 MySQL (0) | 2024.01.25 |
[프로그래머스] 성분으로 구분한 아이스크림 총 주문량 (0) | 2023.03.30 |