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

MySQL에서 DateTime 값을 문자열로 변환하는 방법

MySQL에서 DateTime 값을 문자열로 변환하려면 DATE_FORMAT() 함수를 사용하면 됩니다. 이 함수는 날짜·시간 데이터를 원하는 형식의 문자열로 자유롭게 변환해 주기 때문에, 화면 출력이나 리포트 생성 등 다양한 상황에서 매우 유용하게 활용됩니다.

DATE_FORMAT() 함수의 기본 문법

기본적인 사용 문법은 다음과 같습니다.

SELECT DATE_FORMAT(컬럼명, '%d %m %y') AS 별칭 FROM 테이블명;

여기서 형식 지정자 %d, %m, %y는 각각 일(day), 월(month), 두 자리 연도(year)를 의미합니다. 필요에 따라 다양한 형식 지정자를 조합하여 원하는 출력 형태를 만들 수 있습니다.

실습: 예제 테이블 만들기

개념을 쉽게 이해하기 위해 먼저 예제 테이블을 생성해 보겠습니다. 테이블 생성 쿼리는 다음과 같습니다.

mysql> CREATE TABLE DateAsStringDemo
    -> (
    -> YourDateTime DATETIME
    -> );
Query OK, 0 rows affected (0.57 sec)

DATETIME 값 삽입하기

CURDATE() 함수를 사용하여 현재 날짜를 테이블에 삽입합니다.

mysql> INSERT INTO DateAsStringDemo VALUES(CURDATE());
Query OK, 1 row affected (0.24 sec)

저장된 데이터 확인하기

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

mysql> SELECT * FROM DateAsStringDemo;

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

+---------------------+
| YourDateTime        |
+---------------------+
| 2018-11-26 00:00:00 |
+---------------------+
1 row in set (0.00 sec)

DateTime을 문자열로 변환하기

이제 DATE_FORMAT() 함수를 사용하여 날짜 값을 문자열로 변환하는 쿼리는 다음과 같습니다.

mysql> SELECT DATE_FORMAT(YourDateTime, '%d %m %y') AS YourDateAsString FROM DateAsStringDemo;

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

+------------------+
| YourDateAsString |
+------------------+
| 26 11 18         |
+------------------+
1 row in set (0.00 sec)

결과를 보면 '2018-11-26'이라는 DateTime 값이 '26 11 18'이라는 문자열로 변환된 것을 확인할 수 있습니다. 이처럼 DATE_FORMAT() 함수의 두 번째 인자에 원하는 형식 지정자를 조합하면, 날짜 데이터를 어떤 형태의 문자열로든 자유롭게 변환할 수 있습니다.