Trong bài viết này SmartData sẽ giới thiệu Hàm STR_TO_DATE trong MySQL, hãy cùng tìm hiểu xem hàm STR_TO_DATE có ý nghĩa và cách sử dụng như thế nào nhé.
Hàm STR_TO_DATE
Tác dụng
Hàm STR_TO_DATE lấy một chuỗi và trả về một ngày được chỉ định bởi mặt nạ định dạng.
Cú pháp
Cú pháp của hàm STR_TO_DATE trong MySQL là:
STR_TO_DATE( string, format_mask )Giải thích:
string: Giá trị chuỗi để định dạng là một ngày.
format_mask: Các định dạng để áp dụng cho string.
Sau đây là danh sách các tùy chọn cho tham số format_mask. Các tham số này có thể được sử dụng trong nhiều kết hợp
| Giá trị | Mô tả |
| %a | Viết tắt tên ngày trong tuần (Sun – Sat) |
| %b | Viết tắt tên tháng (Jan đến Dec) |
| %c | Tháng dưới dạng giá trị số (0 đến 12) |
| %D | Ngày trong tháng dưới dạng giá trị số, theo sau là hậu tố (1st, 2nd, 3rd, …) |
| %d | Ngày trong tháng dưới dạng giá trị số (01 đến 31) |
| %e | Ngày trong tháng dưới dạng giá trị số (1 đến 31) |
| %f | Giây (000000 đến 999999) |
| %H | Hour (00 đến 23) |
| %h hoặc %l | Giờ (00 đến 12) |
| %i | Phút (00 đến 59) |
| %j | Ngày trong năm (001 đến 366) |
| %k | Giờ (00 đến 23) |
| %l | Giờ (1 đến 12) |
| %M | Tên tháng đầy đủ (January đến December) |
| %m | Tên tháng dưới dạng giá trị số (00 đến 12) |
| %p | AM hoặc PM |
| %r | Thời gian ở định dạng 12 giờ AM hoặc PM (hh: mm: ss AM / PM) |
| %S | Giây (00 đến 59) |
| %s | Giây (00 đến 59) |
| %T | Thời gian ở định dạng 24 giờ (hh: mm: ss) |
| %U | Tuần mà Chủ nhật là ngày đầu tuần (00 đến 53) |
| %u | Tuần mà thứ Hai là ngày đầu tuần (00 đến 53) |
| %V | Tuần mà Chủ nhật là ngày đầu tuần (01 đến 53) |
| %v | Tuần mà thứ Hai là ngày đầu tuần (01 đến 53) |
| %W | Tên ngày trong tuần đầy đủ (Sunday đến Saturday) |
| %w | Ngày trong tuần trong đó Chủ nhật = 0 và Thứ bảy = 6 |
| %X | Năm trong tuần mà Chủ nhật là ngày đầu tuần |
| %x | Năm trong tuần, thứ Hai là ngày đầu tuần |
| %Y | Năm dưới dạng giá trị số, 4 chữ số |
| %y | Năm dưới dạng giá trị số, 2 chữ số |
Lưu ý:
- Hàm STR_TO_DATE sẽ trả về giá trị ngày giờ, nếu chuỗi chứa cả phần ngày và thời gian hợp lệ.
- Hàm STR_TO_DATE sẽ trả về giá trị ngày, nếu chuỗi chỉ chứa các phần ngày hợp lệ.
- Hàm STR_TO_DATE sẽ trả về giờ, nếu chuỗi chỉ chứa các phần giờ hợp lệ.
- Hàm STR_TO_DATE sẽ trả về giá trị NULL, nếu nó không thể trích xuất các phần ngày và giờ hợp lệ bằng cách sử dụng format_mask.
Ví dụ
VD1:
SQL> SELECT STR_TO_DATE('Friday, February 20, 2023', '%W, %M %e, %Y');Kết quả: ‘2023-02-20’
VD2:
SQL> SELECT STR_TO_DATE('2023,5,25 08', '%Y,%m,%d %h');Kết quả: ‘2023-05-25 08:00:00’
VD3:
SQL> SELECT STR_TO_DATE('2023,3,27 02,30,05', '%Y,%m,%d %h,%i,%s');Kết quả: ‘2023-03-27 02:30:05’
VD4:
SQL> SELECT STR_TO_DATE('11,10,35', '%h,%i,%s');Kết quả: ‘NULL’
Trên đây là phần chia sẻ của SmartData về Hàm STR_TO_DATE trong MySQL
Nếu bạn là newbie có thể tham khảo bài viết này để tìm hiểu lộ trình học DA trong 3 tháng của SmartData
Nếu bạn thấy bài viết hay và hữu ích, bạn có thể tham gia các kênh sau của SmartData để nhận được nhiều hơn nữa:

