MariaDB cung cấp một WEEKDAY()
và một DAYOFWEEK()
, cả hai đều trả về ngày trong tuần, được biểu thị dưới dạng số.
Nhưng số trả về là khác nhau giữa các hàm này.
Bài đăng này xem xét sự khác biệt.
Sự khác biệt
Bảng sau đây nêu rõ sự khác biệt giữa hai chức năng này:
Hàm | Lập chỉ mục |
---|---|
WEEKDAY() | 0 =Thứ hai 1 =Thứ ba 2 =Thứ tư 3 =Thứ năm 4 =Thứ sáu 5 =Thứ bảy 6 =Chủ nhật |
DAYOFWEEK() | Sử dụng lập chỉ mục ODBC, là:1 =Chủ nhật 2 =Thứ hai 3 =Thứ ba 4 =Thứ tư 5 =Thứ năm 6 =Thứ sáu 7 =Thứ bảy |
Ví dụ
Dưới đây là một ví dụ với từng chức năng cạnh nhau:
SELECT
DAYOFWEEK('2030-01-20') AS DAYOFWEEK,
WEEKDAY('2030-01-20') AS WEEKDAY,
DAYNAME('2030-01-20') AS DAYNAME;
Kết quả:
+-----------+---------+---------+ | DAYOFWEEK | WEEKDAY | DAYNAME | +-----------+---------+---------+ | 1 | 6 | Sunday | +-----------+---------+---------+
Chúng ta có thể thấy rằng mỗi hàm trả về một số khác nhau, mặc dù nó diễn ra trong cùng một ngày.
Ở đây, chúng tôi cũng đã sử dụng DAYNAME()
để trả về tên thực của ngày.