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

Định dạng ngày MySQL để chuyển đổi dd.mm.yy sang YYYY-MM-DD?

Sử dụng phương thức STR_TO_DATE () từ MySQL để chuyển đổi. Cú pháp như sau, trong đó chúng tôi đang sử dụng các mã định dạng. Các chỉ định định dạng bắt đầu bằng%.

 SELECT STR_TO_DATE (yourDateColumnName, '% d.% m.% Y') as anyVariableName FROM 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 ConvertIntoDateFormat -> (-> Id int NOT NULL AUTO_INCREMENT, -> LoginDate varchar (30), -> PRIMARY KEY (Id) ->); Truy vấn OK, 0 hàng bị ảnh hưởng (0,47 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 các giá trị ConvertIntoDateFormat (LoginDate) ('11 .01.2019 '); Truy vấn OK, 1 hàng bị ảnh hưởng (0,10 giây) mysql> chèn vào các giá trị ConvertIntoDateFormat (LoginDate) ('10 .04.2017'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,16 giây) mysql> chèn vào giá trị ConvertIntoDateFormat (Ngày đăng nhập) ('21 .10.2016 '); Truy vấn OK, 1 hàng bị ảnh hưởng (0,12 giây) mysql> chèn vào giá trị ConvertIntoDateFormat (Ngày đăng nhập) ('26 .09.2018'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,14 giây) mysql> chèn vào giá trị ConvertIntoDateFormat (Ngày đăng nhập) ('25 .12.2012 '); Truy vấn OK, 1 hàng bị ảnh hưởng (0,17 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 ConvertIntoDateFormat; 

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

 + ---- + ------------ + | Id | Ngày đăng nhập | + ---- + ------------ + | 1 | 11.01.2019 || 2 | 10.04.2017 || 3 | 21.10.2016 || 4 | 26.09.2018 || 5 | 25.12.2012 | + ---- + ------------ + 5 hàng trong bộ (0,00 giây) 

Sau đây là truy vấn để định dạng ngày thành YYYY-MM-DD.

 mysql> chọn str_to_date (LoginDate, '% d.% m.% Y') làm DateFormat từ ConvertIntoDateFormat; 

Đây là kết quả đầu ra.

 + ------------ + | DateFormat | + ------------ + | 2019-01-11 || 2017-04-10 || 2016-10-21 || 2018-09-26 || 2012-12-25 | + ------------ + 5 hàng trong bộ (0,00 giây) 

Bạn cũng có thể sử dụng phương thức DATE_FORMAT () cho cùng mục đích. Truy vấn như sau

 mysql> chọn DATE_FORMAT (STR_TO_DATE (Ngày đăng nhập, '% d.% m.% Y'), '% Y-% m-% d') làm DateFormat từ -> ConvertIntoDateFormat; 

Sau đây là đầu ra−

 + ------------ + | DateFormat | + ------------ + | 2019-01-11 || 2017-04-10 || 2016-10-21 || 2018-09-26 || 2012-12-25 | + ------------ + 5 hàng trong bộ (0,00 giây)