Vấn đề:
Bạn muốn thay đổi định dạng dữ liệu ngày và giờ trong cơ sở dữ liệu MySQL.
Ví dụ:
Cơ sở dữ liệu của chúng tôi có một bảng có tên student_platform
với dữ liệu trong các cột id
, first_name
, last_name
và registration_datetime
.
id | first_name | last_name | register_datetime |
---|---|---|---|
1 | Lora | Lorens | 2019-02-23 12:04:23 |
2 | Anne | Smith | 2018-07-10 10:12:15 |
3 | Tom | Jackson | 2019-03-09 08:20:33 |
4 | Richard | Williams | 2018-09-30 06:07:34 |
Đối với mỗi sinh viên, hãy lấy họ, tên và ngày giờ đăng ký của họ. Tuy nhiên, chúng tôi muốn hiển thị ngày và giờ theo định dạng sau:tên ngày trong tuần viết tắt, dấu phẩy, năm, tên tháng, ngày trong tháng và thời gian tính bằng giờ, phút và giây. Nó sẽ trông như thế này:
Tue, 2019 February 17 11:18:55
Giải pháp:
Chúng tôi sẽ sử dụng DATE_FORMAT()
hàm số. Đây là truy vấn bạn sẽ viết:
SELECT first_name, last_name, DATE_FORMAT(registration_datetime,’%a, %Y %M %e %H:%i:%s’) AS format_registration_datetime FROM student_platform;
Đây là kết quả của truy vấn:
first_name | last_name | format_registration_datetime |
---|---|---|
Lora | Lorens | Thứ bảy, năm 2019, 23 tháng 2, 12:04:23 |
Anne | Smith | Thứ Ba, 2018 10 tháng 7 10:12:15 |
Tom | Jackson | Thứ bảy, ngày 9 tháng 3 năm 2019 08:20:33 |
Richard | Williams | Thứ Hai, năm 2019, ngày 30 tháng 9, 06:07:34 |
Thảo luận:
Trong cơ sở dữ liệu MySQL, hàm DATE_FORMAT () cho phép bạn hiển thị dữ liệu ngày và giờ ở định dạng đã thay đổi.
Hàm này có hai đối số. Đầu tiên là ngày / giờ được định dạng lại; đây có thể là cột ngày / giờ / ngày giờ / dấu thời gian hoặc một biểu thức trả về giá trị ở một trong các kiểu dữ liệu này. (Trong ví dụ của chúng tôi, chúng tôi sử dụng registration_datetime
cột ngày giờ kiểu dữ liệu.)
Đối số thứ hai là một chuỗi chứa định dạng ngày và giờ mong muốn. MySQL cung cấp một số thông số kỹ thuật có sẵn, như:
- % a - Tên ngày trong tuần viết tắt.
- % Y - Năm, có 4 chữ số.
- % M - Tên đầy đủ của tháng.
- % e - Ngày trong tháng (từ 1 - 31).
- % H - Giờ (từ 00-23).
- % i - Phút (từ 00-59).
- % s - Giây (từ 00-59).
Bạn có thể tìm hiểu thêm về các chỉ định ngày và giờ tại đây, trong tài liệu MySQL chính thức.
Ví dụ: Lora Lorens đã đăng ký vào ‘2019-02-23 12:04:23’. Giờ đây, ngày và giờ đăng ký của cô ấy có định dạng mới là 'Thứ bảy, ngày 23 tháng 2 năm 2019 12:04:23'.