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

MySQL에서 DATE_FORMAT()로 원하는 날짜 형식 지정하기

MySQL에서 날짜를 원하는 형식으로 출력하려면 DATE_FORMAT() 함수를 사용해야 합니다. 이 함수는 DATE 타입의 값을 지정한 형식 문자열에 맞춰 변환해 주며, 보고서나 화면 출력 시 매우 유용하게 활용됩니다.

아래에서 실제 예제를 통해 단계별로 살펴보겠습니다.

1. 테이블 생성

먼저 날짜 컬럼을 포함한 테이블을 생성합니다.

mysql> create table DemoTable
   (
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   ArrivalDate date
   );
Query OK, 0 rows affected (0.60 sec)

2. 샘플 데이터 삽입

INSERT 문을 사용해 몇 개의 날짜 레코드를 입력합니다.

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

mysql> insert into DemoTable(ArrivalDate) values('2019-04-26');
Query OK, 1 row affected (0.12 sec)

mysql> insert into DemoTable(ArrivalDate) values('2019-03-01');
Query OK, 1 row affected (0.13 sec)

3. 저장된 레코드 확인

SELECT 문으로 테이블의 전체 데이터를 조회해 보겠습니다.

mysql> select *from DemoTable;

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

+----+-------------+
| Id | ArrivalDate |
+----+-------------+
|  1 | 2019-01-31  |
|  2 | 2019-04-26  |
|  3 | 2019-03-01  |
+----+-------------+
3 rows in set (0.00 sec)

기본적으로 DATE 타입은 YYYY-MM-DD 형식으로 저장되는 것을 확인할 수 있습니다.

4. DATE_FORMAT()으로 날짜 형식 변경

이제 DATE_FORMAT() 함수를 사용해 날짜를 일-월이름-연도 형식으로 출력해 보겠습니다.

mysql> select Id,DATE_FORMAT(ArrivalDate, '%d-%M-%Y') from DemoTable;

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

+----+--------------------------------------+
| Id | DATE_FORMAT(ArrivalDate, '%d-%M-%Y') |
+----+--------------------------------------+
|  1 | 31-January-2019                      |
|  2 | 26-April-2019                        |
|  3 | 01-March-2019                        |
+----+--------------------------------------+
3 rows in set (0.06 sec)

자주 사용하는 DATE_FORMAT() 형식 지정자

형식 문자열에 사용할 수 있는 대표적인 지정자는 다음과 같습니다.

  • %d — 일(01~31)
  • %M — 월 이름(January, February 등)
  • %m — 월 숫자(01~12)
  • %Y — 4자리 연도
  • %y — 2자리 연도

예를 들어 '%Y년 %m월 %d일'처럼 한글과 조합하여 사용할 수도 있으므로, 서비스 요구 사항에 맞게 자유롭게 응용해 보시기 바랍니다.