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

Định dạng ngày MySQL: %M không phải tháng viết tắt, dùng %b

Trong MySQL DATE_FORMAT(), ký hiệu %M hiển thị **tên tháng đầy đủ** (January, February...), KHÔNG phải viết tắt. Để hiển thị tháng viết tắt 3 chữ cái (Jan, Feb, Mar...), dùng %b.

Bảng so sánh định dạng tháng

Ký hiệuÝ nghĩaVí dụ (tháng 1)
%MTên tháng đầy đủJanuary
%bTên tháng viết tắt (3 chữ cái)Jan
%mTháng 2 chữ số01
%cTháng số (1-12, không padding)1

Cú pháp

SELECT DATE_FORMAT(ten_cot_ngay, '%d-%b-%y') AS dinh_dang_ngan
FROM ten_bang;

Ví dụ minh họa

1. Tạo bảng

CREATE TABLE DateFormatMonthDemo (
    Id INT NOT NULL AUTO_INCREMENT,
    ShippingDate DATE,
    PRIMARY KEY(Id)
);

2. Chèn dữ liệu

INSERT INTO DateFormatMonthDemo(ShippingDate) VALUES
('2019-05-21'), ('2015-05-23'), ('2019-11-01'),
('2017-12-24'), ('2016-01-13'), ('2015-02-22');

3. Xem dữ liệu gốc

SELECT * FROM DateFormatMonthDemo;

Kết quả:

+----+--------------+
| Id | ShippingDate |
+----+--------------+
| 1  | 2019-05-21   |
| 2  | 2015-05-23   |
| 3  | 2019-11-01   |
| 4  | 2017-12-24   |
| 5  | 2016-01-13   |
| 6  | 2015-02-22   |
+----+--------------+

4. Định dạng: Ngày-ThángViếtTắt-Năm2Số

SELECT DATE_FORMAT(ShippingDate, '%d-%b-%y') AS DateDemo 
FROM DateFormatMonthDemo;

Kết quả:

+-----------+
| DateDemo  |
+-----------+
| 21-May-19 |
| 23-May-15 |
| 01-Nov-19 |
| 24-Dec-17 |
| 13-Jan-16 |
| 22-Feb-15 |
+-----------+

Các định dạng phổ biến khác

MẫuKết quả (2019-05-21)Mô tả
%d-%b-%Y21-May-2019Ngày-ThángViếtTắt-Năm4Số
%b %d, %YMay 21, 2019Phong cách US
%d/%m/%Y21/05/2019Phong cách VN/UK
%W, %d %M %YTuesday, 21 May 2019Đầy đủ thứ, tháng
%Y-%m-%d2019-05-21ISO 8601 (chuẩn quốc tế)

Lưu ý

  • DATE_FORMAT() trả về kiểu VARCHAR (chuỗi)
  • Locale ảnh hưởng đến tên tháng: SET lc_time_names = 'vi_VN'; → Tháng hiển thị tiếng Việt
  • Để parse ngược lại: STR_TO_DATE('21-May-19', '%d-%b-%y')