MySQL에서 날짜/시간 유형을 날짜로만 변환

Mehvish Ashiq 2023년6월20일
  1. MySQL에서 DATETIME 유형에서 DATE 유형으로 변환
  2. DATE()를 사용하여 MySQL에서 DATETIMEDATE로 변환
  3. CAST()를 사용하여 MySQL에서 DATETIMEDATE로 변환
  4. CONVERT()를 사용하여 MySQL에서 DATETIMEDATE로 변환
  5. DATE_FORMAT()을 사용하여 MySQL에서 DATETIMEDATE로 변환
MySQL에서 날짜/시간 유형을 날짜로만 변환

오늘은 MySQL에서 DATETIME 타입을 DATE 타입으로 변환하기 위한 DATE(), CAST(), CONVERT(), DATE_FORMAT() 메소드에 대해 알아보겠습니다. 위에서 언급한 방법을 사용할 수 있으며 MySQL 버전 4.0 이상에서 사용할 수 있습니다.

MySQL에서 DATETIME 유형에서 DATE 유형으로 변환

코드 예제로 이해하기 위해 id, productName, orderNumberorderDateTime을 속성으로 사용하여 orders 테이블을 생성해 보겠습니다. 또한 id 필드를 사용하여 기본 키를 생성합니다. 다음 쿼리를 참조하십시오.

예제 코드:

CREATE TABLE orders(
    id INT NOT NULL,
    productName VARCHAR(50) NOT NULL,
    orderNumber INT NOT NULL,
    orderDateTime DATETIME NOT NULL,
    PRIMARY KEY(id)
);

INSERT INTO orders (id, productName, orderNumber, orderDateTime)
VALUES
(1, 'Oppo F17', 3322, '2022-04-11 04:32:15'),
(2, 'DELL Laptop', 5433, '2022-05-12 12:23:09'),
(3, 'HP Mouse', 3489, '2022-05-16 07:23:16');

SELECT * FROM orders;

출력:

+----+-------------+-------------+---------------------+
| id | productName | orderNumber | orderDateTime       |
+----+-------------+-------------+---------------------+
|  1 | Oppo F17    |        3322 | 2022-04-11 04:32:15 |
|  2 | DELL Laptop |        5433 | 2022-05-12 12:23:09 |
|  3 | HP Mouse    |        3489 | 2022-05-16 07:23:16 |
+----+-------------+-------------+---------------------+
3 rows in set (0.00 sec)

테이블이 준비되면 이제 다음 방법 중 하나를 사용하여 프로젝트 요구 사항에 따라 목표를 충족할 수 있습니다.

DATE()를 사용하여 MySQL에서 DATETIMEDATE로 변환

예제 코드:

 SELECT id, productName, orderNumber, DATE(orderDateTime) FROM orders;

출력:

+----+-------------+-------------+---------------------+
| id | productName | orderNumber | DATE(orderDateTime) |
+----+-------------+-------------+---------------------+
|  1 | Oppo F17    |        3322 | 2022-04-11          |
|  2 | DELL Laptop |        5433 | 2022-05-12          |
|  3 | HP Mouse    |        3489 | 2022-05-16          |
+----+-------------+-------------+---------------------+
3 rows in set (0.00 sec)

DATE() 함수는 유효한 DATE 또는 DATETIME 유형 필드에서 DATE 부분을 가져올 수 있습니다. 유효하지 않은 표현식이 전달되면 NULL을 반환합니다.

DATE에 따라서만 데이터를 그룹화하려는 경우 이 기사를 사용할 수 있습니다.

CAST()를 사용하여 MySQL에서 DATETIMEDATE로 변환

예제 코드:

SELECT id, productName, orderNumber, CAST(orderDateTime AS DATE) FROM orders;

출력:

+----+-------------+-------------+-----------------------------+
| id | productName | orderNumber | CAST(orderDateTime AS DATE) |
+----+-------------+-------------+-----------------------------+
|  1 | Oppo F17    |        3322 | 2022-04-11                  |
|  2 | DELL Laptop |        5433 | 2022-05-12                  |
|  3 | HP Mouse    |        3489 | 2022-05-16                  |
+----+-------------+-------------+-----------------------------+
3 rows in set (0.00 sec)

CAST() 메소드는 한 데이터 유형의 값을 다른 주어진 데이터 유형으로 캐스트(변환)하는 데 사용됩니다.

CONVERT()를 사용하여 MySQL에서 DATETIMEDATE로 변환

예제 코드:

SELECT id, productName, orderNumber, CONVERT(orderDateTime, DATE) FROM orders;

출력:

+----+-------------+-------------+------------------------------+
| id | productName | orderNumber | CONVERT(orderDateTime, DATE) |
+----+-------------+-------------+------------------------------+
|  1 | Oppo F17    |        3322 | 2022-04-11                   |
|  2 | DELL Laptop |        5433 | 2022-05-12                   |
|  3 | HP Mouse    |        3489 | 2022-05-16                   |
+----+-------------+-------------+------------------------------+
3 rows in set (0.00 sec)

CONVERT() 메서드를 사용하여 DATETIME 유형 필드를 DATE로만 변환할 수도 있습니다. 두 개의 인수를 허용합니다. 첫 번째는 변환해야 하는 값이고 두 번째는 주어진 값이 변환될 데이터 유형입니다.

DATE_FORMAT()을 사용하여 MySQL에서 DATETIMEDATE로 변환

예제 코드:

SELECT id, productName, orderNumber,
DATE_FORMAT(orderDateTime, '%Y-%m-%d') FROM orders;

출력:

+----+-------------+-------------+----------------------------------------+
| id | productName | orderNumber | DATE_FORMAT(orderDateTime, '%Y-%m-%d') |
+----+-------------+-------------+----------------------------------------+
|  1 | Oppo F17    |        3322 | 2022-04-11                             |
|  2 | DELL Laptop |        5433 | 2022-05-12                             |
|  3 | HP Mouse    |        3489 | 2022-05-16                             |
+----+-------------+-------------+----------------------------------------+
3 rows in set (0.00 sec)

DATE_FORMAT() 함수는 DATETIMEDATE 유형으로 변환하며 현재 날짜 형식을 변경하는 데 유용합니다. 예를 들어 DATEd/m/Y 형식으로 표시하려면 다음과 같이 할 수 있습니다.

예제 코드:

SELECT id, productName, orderNumber,
DATE_FORMAT(orderDateTime, '%d/%m/%Y') FROM orders;

출력:

+----+-------------+-------------+----------------------------------------+
| id | productName | orderNumber | DATE_FORMAT(orderDateTime, '%d/%m/%Y') |
+----+-------------+-------------+----------------------------------------+
|  1 | Oppo F17    |        3322 | 11/04/2022                             |
|  2 | DELL Laptop |        5433 | 12/05/2022                             |
|  3 | HP Mouse    |        3489 | 16/05/2022                             |
+----+-------------+-------------+----------------------------------------+
3 rows in set (0.00 sec)

월 번호 대신 월 이름을 보려면 DATE_FORMAT() 함수를 사용하여 다음 형식으로 변환할 수도 있습니다.

예제 코드:

SELECT id, productName, orderNumber,
DATE_FORMAT(orderDateTime, '%D %M %Y') FROM orders;

출력:

+----+-------------+-------------+----------------------------------------+
| id | productName | orderNumber | DATE_FORMAT(orderDateTime, '%D %M %Y') |
+----+-------------+-------------+----------------------------------------+
|  1 | Oppo F17    |        3322 | 11th April 2022                        |
|  2 | DELL Laptop |        5433 | 12th May 2022                          |
|  3 | HP Mouse    |        3489 | 16th May 2022                          |
+----+-------------+-------------+----------------------------------------+
3 rows in set (0.00 sec)
Mehvish Ashiq avatar Mehvish Ashiq avatar

Mehvish Ashiq is a former Java Programmer and a Data Science enthusiast who leverages her expertise to help others to learn and grow by creating interesting, useful, and reader-friendly content in Computer Programming, Data Science, and Technology.

LinkedIn GitHub Facebook

관련 문장 - MySQL Date