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: