Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL DATE_FORMAT() 함수로 날짜 형식 변경하는 방법 완벽 가이드

MySQL에서 저장된 날짜 데이터를 원하는 형식으로 표시해야 할 때가 자주 있습니다. 이럴 때 DATE_FORMAT() 함수를 사용하면 손쉽게 날짜 형식을 변경할 수 있습니다. 이 글에서는 DATE_FORMAT() 함수의 기본 문법부터 실제 예제까지 단계별로 살펴보겠습니다.

DATE_FORMAT() 함수 기본 문법

DATE_FORMAT() 함수는 첫 번째 인자로 날짜 컬럼을, 두 번째 인자로 원하는 형식 지정자(Format Specifier)를 받습니다.

SELECT date_format(컬럼명, '형식지정자') FROM 테이블명;

예제 테이블 생성하기

먼저 실습에 사용할 테이블을 생성합니다. 배송 날짜를 저장하는 ShippingDate 컬럼을 가진 테이블입니다.

mysql> create table DemoTable
    (
    ShippingDate date
    );
Query OK, 0 rows affected (0.48 sec)

샘플 데이터 삽입

INSERT 명령어를 사용하여 몇 개의 레코드를 삽입합니다.

mysql> insert into DemoTable values('2016-01-21');
Query OK, 1 row affected (0.17 sec)

mysql> insert into DemoTable values('2018-05-24');
Query OK, 1 row affected (0.18 sec)

mysql> insert into DemoTable values('2019-12-31');
Query OK, 1 row affected (0.18 sec)

저장된 데이터 확인

SELECT 문으로 테이블의 모든 레코드를 조회해 보겠습니다.

mysql> select *from DemoTable;

실행 결과는 다음과 같습니다.

+--------------+
| ShippingDate |
+--------------+
| 2016-01-21   |
| 2018-05-24   |
| 2019-12-31   |
+--------------+
3 rows in set (0.00 sec)

기본적으로 MySQL은 날짜를 'YYYY-MM-DD'(연도-월-일) 형식으로 저장합니다.

DATE_FORMAT()으로 날짜 형식 변경하기

이제 DATE_FORMAT() 함수를 사용하여 날짜를 '일/월/년'(DD/MM/YYYY) 형식으로 변환해 보겠습니다.

mysql> select date_format(ShippingDate,'%d/%m/%Y') from DemoTable;

실행 결과는 다음과 같습니다.

+--------------------------------------+
| date_format(ShippingDate,'%d/%m/%Y') |
+--------------------------------------+
| 21/01/2016                           |
| 24/05/2018                           |
| 31/12/2019                           |
+--------------------------------------+
3 rows in set (0.00 sec)

주요 형식 지정자 정리

DATE_FORMAT()에서 자주 사용되는 형식 지정자는 다음과 같습니다.

  • %Y — 4자리 연도 (예: 2024)
  • %y — 2자리 연도 (예: 24)
  • %m — 2자리 월 (01~12)
  • %d — 2자리 일 (01~31)
  • %H — 24시간제 시간 (00~23)
  • %i — 분 (00~59)
  • %s — 초 (00~59)

이처럼 DATE_FORMAT() 함수와 다양한 형식 지정자를 조합하면 업무 요구사항에 맞는 날짜 표시 형식을 자유롭게 만들 수 있습니다.