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

Chuyển đổi chuỗi (varchar) sang định dạng timestamp trong MySQL

Chuyển đổi VARCHAR sang TIMESTAMP trong MySQL

Sử dụng kết hợp STR_TO_DATE() và DATE_FORMAT().

Tạo bảng và chèn dữ liệu

mysql> create table DemoTable1602 ( ReportingDate varchar(40) ); 
Query OK, 0 rows affected (0.51 sec)
mysql> insert into DemoTable1602 values('Wed Oct 02 16:10:45 IST 2019'); 
mysql> insert into DemoTable1602 values('Fri May 31 13:00:10 IST 2019'); 
mysql> insert into DemoTable1602 values('Mon Dec 31 14:20:00 IST 2018');

Truy vấn chuyển đổi

mysql> select date_format(str_to_date(ReportingDate,'%a %b %d %T IST %Y'),'%d-%m-%Y %H:%i:%s') 
    from DemoTable1602;

Kết quả

+----------------------------------------------------------------------------------+ 
| date_format(str_to_date(ReportingDate,'%a %b %d %T IST %Y'),'%d-%m-%Y %H:%i:%s') | 
+----------------------------------------------------------------------------------+ 
| 02-10-2019 16:10:45                                                              | 
| 31-05-2019 13:00:10                                                              | 
| 31-12-2018 14:20:00                                                              | 
+----------------------------------------------------------------------------------+ 
3 rows in set (0.03 sec)

Giải thích định dạng:

  • %a: Tên ngày viết tắt (Wed, Fri, Mon)
  • %b: Tên tháng viết tắt (Oct, May, Dec)
  • %d: Ngày trong tháng (02, 31)
  • %T: Thời gian 24h (HH:MM:SS)
  • %Y: Năm 4 chữ số
  • Định dạng đầu ra: %d-%m-%Y %H:%i:%s (ngày-tháng-năm giờ:phút:giây)