Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Chuyển đổi định dạng ngày YYYYMMDD sang YYYY-MM-DD trong MySQL

Kết hợp STR_TO_DATE (parse chuỗi thành DATE) và DATE_FORMAT (định dạng DATE thành chuỗi) để chuyển đổi.

Cú pháp

SELECT DATE_FORMAT(STR_TO_DATE(cotNgay, '%Y%m%d'), '%Y-%m-%d') FROM tenBang;

Ví dụ

Tạo bảng cột varchar chứa ngày dạng YYYYMMDD:

mysql> create table DemoTable ( 
    ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    ClientProjectDeadline varchar(200) 
); 
Query OK, 0 rows affected (0.57 sec)

Dữ liệu: 20121221, 20190416, 20160624, 20170131

Chuyển đổi

mysql> select date_format(str_to_date(ClientProjectDeadline, '%Y%m%d'),'%Y-%m-%d') from DemoTable;
+----------------------------------------------------------------------+
| date_format(str_to_date(ClientProjectDeadline, '%Y%m%d'),'%Y-%m-%d') |
+----------------------------------------------------------------------+
| 2012-12-21                                                           |
| 2019-04-16                                                           |
| 2016-06-24                                                           |
| 2017-01-31                                                           |
+----------------------------------------------------------------------+

Các format phổ biến:

  • %Y - năm 4 chữ số
  • %m - tháng 2 chữ số
  • %d - ngày 2 chữ số
  • %y - năm 2 chữ số

MySQL 8.0+: Có thể dùng CAST('20190416' AS DATE) trực tiếp nếu chuỗi đúng chuẩn ISO.