注册

详解MySQL的DAYOFWEEK()函数:返回日期的星期几

DAYOFWEEK() 函数的作用与使用方法

DAYOFWEEK() 函数是 MySQL 中的日期函数之一,主要用于获取指定日期是一周中的哪一天,其语法如下:

DAYOFWEEK(date)

参数 date 是日期参数,可以是日期值、日期时间值、时间戳等,函数返回结果是一个介于 1 和 7 之间的整数,表示星期几,1 表示星期天,2 表示星期一,以此类推。

下面通过实例来进一步说明 DAYOFWEEK() 函数的使用方法。

DAYOFWEEK() 函数的实例说明

实例 1:查询指定日期的星期几

假设有一张名为 orders 的表,其中包含一个名为 order_date 的日期字段,要查询 2020 年 12 月 1 日对应的星期几,可以使用以下 SQL 语句:

SELECT DAYOFWEEK('2020-12-01') AS week_day;

执行以上 SQL 语句后,会返回如下结果:

+----------+
| week_day |
+----------+
|        3 |
+----------+

可以看到,2020 年 12 月 1 日是星期二,其对应的数字是 3。

实例 2:按照星期几统计订单数量

在上面的 orders 表中,可以通过 DAYOFWEEK() 函数来按照不同的星期几统计订单数量,例如:

SELECT DAYOFWEEK(order_date) AS week_day, COUNT(*) AS order_count
FROM orders
GROUP BY week_day;

执行以上 SQL 语句后,会返回如下结果:

+----------+-------------+
| week_day | order_count |
+----------+-------------+
|        1 |         120 |
|        2 |         160 |
|        3 |         180 |
|        4 |         150 |
|        5 |         200 |
|        6 |         220 |
|        7 |         190 |
+----------+-------------+

可以看到,以上查询结果按照星期几分组,并统计了每种星期几对应的订单数量。