Hàm STR_TO_DATE(str, format) chuyển chuỗi thành DATE / DATETIME theo mẫu định dạng (format specifier) bạn cung cấp.
Cú pháp
SELECT STR_TO_DATE(ten_cot, 'mau_dinh_dang') FROM ten_bang;
Ví dụ minh họa
Tạo bảng (lưu ngày dưới dạng chuỗi):
mysql> CREATE TABLE DemoTable (AdmissionDate VARCHAR(100));
Chèn dữ liệu (định dạng dd-mm-yyyy):
mysql> INSERT INTO DemoTable VALUES('01-12-2019');
mysql> INSERT INTO DemoTable VALUES('15-06-2019');
mysql> INSERT INTO DemoTable VALUES('21-01-2016');
Xem dữ liệu:
mysql> SELECT * FROM DemoTable;
Kết quả
+---------------+ | AdmissionDate | +---------------+ | 01-12-2019 | | 15-06-2019 | | 21-01-2016 | +---------------+
Chuyển sang DATE với mẫu %d-%m-%Y:
mysql> SELECT STR_TO_DATE(AdmissionDate, '%d-%m-%Y') FROM DemoTable;
Kết quả
+---------------------------------------+ | STR_TO_DATE(AdmissionDate, '%d-%m-%Y') | +---------------------------------------+ | 2019-12-01 | | 2019-06-15 | | 2016-01-21 | +---------------------------------------+
Các mã định dạng phổ biến: %d ngày (01-31), %m tháng (01-12), %Y năm 4 chữ số, %H giờ (00-23), %i phút, %s giây.