Computer >> Máy Tính >  >> Lập trình >> MySQL

Chuyển đổi varchar thành ngày tháng trong MySQL?

Bạn có thể sử dụng date_format () để chuyển đổi varchar thành ngày tháng. Cú pháp như sau -

 SELECT DATE_FORMAT (STR_TO_DATE (yourColumnName, 'yourFormatSpecifier'), 'yourDateFormatSpecifier') làm anyVariableName từ yourTableName; 

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau -

 mysql> tạo bảng VarcharToDate -> (-> Id int NOT NULL AUTO_INCREMENT, -> Created_Time varchar (100), -> PRIMARY KEY (Id) ->); Truy vấn OK, 0 hàng bị ảnh hưởng (1.10 giây)  

Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn như sau -

 mysql> chèn vào giá trị VarcharToDate (Created_Time) ('12 / 1/2016 '); Truy vấn OK, 1 hàng bị ảnh hưởng (0,14 giây) mysql> chèn vào giá trị VarcharToDate (Created_Time) ('14/3/2017'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,18 giây) mysql> chèn vào giá trị VarcharToDate (Created_Time) ('15 / 3/2018 '); Truy vấn OK, 1 hàng bị ảnh hưởng (0,21 giây) mysql> chèn vào giá trị VarcharToDate (Created_Time) ( '19/5/2011 '); Truy vấn OK, 1 hàng bị ảnh hưởng (0,18 giây) mysql> insert intoVarcharToDate (Created_Time) giá trị ('19/8/2019'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,15 giây) mysql> insert thành các giá trị VarcharToDate (Created_Time) ('21/11/2020 '); Truy vấn OK, 1 hàng bị ảnh hưởng (0,23 giây) 

Hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select. Truy vấn như sau -

 mysql> select * from VarcharToDate; + ---- + -------------- + | Id | Created_Time | + ---- + -------------- + | 1 | 12/1/2016 || 2 | 14/3/2017 || 3 | 15/3/2018 || 4 | Ngày 19/5/2011 || 5 | 19/8/2019 || 6 | 21/11/2020 | + ---- + -------------- + 6 hàng trong bộ (0,00 giây) 

Đây là truy vấn để chuyển đổi varchar thành ngày. Đầu tiên, bạn cần sử dụng hàm str_to_date () để chuyển đổi thành ngày tháng. Sau đó, sử dụng date_format () để cung cấp ngày thực tế -

 mysql> select date_format (str_to_date (Created_Time, '% d /% m /% Y'), '% Y-% m-% d') as Date from VarcharToDate; 

Sau đây là kết quả -

 + ------------ + | Ngày | + ------------ + | 2016-01-12 || 2017-03-14 || 2018-03-15 || 2011/05/19 || 2019-08-19 || 2020-11-21 | + ------------ + 6 hàng trong bộ (0,00 giây)