WEEKDAY()
Description
Returns the weekday index for date (0 = Monday, 1 = Tuesday, … 6 = Sunday). Returns NULL if date is NULL.
Syntax
1. > WEEKDAY(date)
Arguments
| Arguments | Description |
|---|---|
| date | Required. The date to be formatted. |
Examples
- Example 1:
1. mysql> SELECT WEEKDAY('2008-02-03 22:23:00');
2. +------------------------------+
3. | weekday(2008-02-03 22:23:00) |
4. +------------------------------+
5. | 6 |
6. +------------------------------+
7. 1 row in set (0.03 sec)
- Example 2:
1. drop table if exists t1;
2. create table t1 (id int,d date, dt datetime,c char(10),vc varchar(20));
3. insert into t1 values (1,"2021-01-13", "2021-01-13 13:00:00", "2021-12-15", "2021-12-16");
4. insert into t1 values (1,"2021-01-31", "2021-01-31 13:00:00", "2021-12-15", "2021-12-16");
5. insert into t1 values (2,"2022-02-15", "2022-02-15 18:54:29", "2021-02-15", "2021-02-15");
6. insert into t1 values (2,"2022-02-28", "2022-02-28 18:54:29", "2021-02-15", "2021-02-15");
7. insert into t1 values (3,"2000-02-29", "2000-02-29 18:54:29", "2021-02-15", "2021-02-15");
8. insert into t1 values (4,"2023-03-17", "2021-02-17 23:54:59", "2021-03-17", "2021-03-17");
9. insert into t1 values (5,"1985-04-18", "1985-04-18 00:00:01", "1985-04-18", "1985-04-18");
10. insert into t1 values (6,"1987-05-20", "1987-05-20 22:59:59", "1987-05-20", "1987-05-20");
11. insert into t1 values (7,"1989-06-22", "1989-06-22 15:00:30", "1989-06-22", "1989-06-22");
12. insert into t1 values (8,"1993-07-25", "1987-07-25 03:04:59", "1993-07-25", "1993-07-25");
13. insert into t1 values (9,"1995-08-27", "1987-08-27 04:32:33", "1995-08-27", "1995-08-27");
14. insert into t1 values (10,"1999-09-30", "1999-09-30 10:11:12", "1999-09-30", "1999-09-30");
15. insert into t1 values (11,"2005-10-30", "2005-10-30 18:18:59", "2005-10-30", "2005-10-30");
16. insert into t1 values (12,"2008-11-30", "2008-11-30 22:59:59", "2008-11-30", "2008-11-30");
17. insert into t1 values (13,"2013-12-01", "2013-12-01 22:59:59", "2013-12-01", "2013-12-01");
18. insert into t1 values (14,null, null, null, null);
20. mysql> select weekday(d),weekday(dt) from t1;
21. +------------+-------------+
22. | weekday(d) | weekday(dt) |
23. +------------+-------------+
24. | 2 | 2 |
25. | 6 | 6 |
26. | 1 | 1 |
27. | 0 | 0 |
28. | 1 | 1 |
29. | 4 | 2 |
30. | 3 | 3 |
31. | 2 | 2 |
32. | 3 | 3 |
33. | 6 | 5 |
34. | 6 | 3 |
35. | 3 | 3 |
36. | 6 | 6 |
37. | 6 | 6 |
38. | 6 | 6 |
39. | NULL | NULL |
40. +------------+-------------+
41. 16 rows in set (0.01 sec)
43. mysql> select weekday(c),weekday(vc) from t1;
44. +------------+-------------+
45. | weekday(c) | weekday(vc) |
46. +------------+-------------+
47. | 2 | 3 |
48. | 2 | 3 |
49. | 0 | 0 |
50. | 0 | 0 |
51. | 0 | 0 |
52. | 2 | 2 |
53. | 3 | 3 |
54. | 2 | 2 |
55. | 3 | 3 |
56. | 6 | 6 |
57. | 6 | 6 |
58. | 3 | 3 |
59. | 6 | 6 |
60. | 6 | 6 |
61. | 6 | 6 |
62. | NULL | NULL |
63. +------------+-------------+
64. 16 rows in set (0.02 sec)
