在 MySQL 中為星期幾獲取星期數?


MySQL DAYOFWEEK() 函式返回 1 表示星期日,2 表示星期一,以此類推,依次表示星期幾。讓我們先建立一個表,以瞭解示例 −

mysql> create table DayOfWeekDemo
−> (
   −> Issuedate datetime
−> );
Query OK, 0 rows affected (0.52 sec)

在表中插入日期,使用 insert 命令。查詢如下 −

mysql> insert into DayOfWeekDemo values(date_add(curdate(),interval 5 day));
Query OK, 1 row affected (0.52 sec)

mysql> insert into DayOfWeekDemo values(date_add(curdate(),interval 6 day));
Query OK, 1 row affected (0.13 sec)

mysql> insert into DayOfWeekDemo values(date_add(curdate(),interval 7 day));
Query OK, 1 row affected (0.10 sec)

mysql> insert into DayOfWeekDemo values(date_add(curdate(),interval 8 day));
Query OK, 1 row affected (0.15 sec)

mysql> insert into DayOfWeekDemo values(date_add(curdate(),interval 9 day));
Query OK, 1 row affected (0.10 sec)

mysql> insert into DayOfWeekDemo values(date_add(curdate(),interval 10 day));
Query OK, 1 row affected (0.13 sec)

mysql> insert into DayOfWeekDemo values(date_add(curdate(),interval 11 day));
Query OK, 1 row affected (0.10 sec)

然後,可以透過 select 語句顯示錶中存在多少條記錄。查詢如下 −

mysql> select *from DayOfWeekDemo;

以下是輸出 −

+---------------------+
| Issuedate           |
+---------------------+
| 2018-12-03 00:00:00 |
| 2018-12-04 00:00:00 |
| 2018-12-05 00:00:00 |
| 2018-12-06 00:00:00 |
| 2018-12-07 00:00:00 |
| 2018-12-08 00:00:00 |
| 2018-12-09 00:00:00 |
+---------------------+
7 rows in set (0.00 sec)

檢視上表:2018-12-03 是星期一,2018-12-04 是星期二,以此類推。以下是返回星期幾索引的查詢 −

mysql> select dayofweek(Issuedate) as WeekNumber from DayOfWeekDemo;

以下是輸出顯示的星期天數 −

+------------+
| WeekNumber |
+------------+
|          2 |
|          3 |
|          4 |
|          5 |
|          6 |
|          7 |
|          1 |
+------------+
7 rows in set (0.00 sec)

更新於: 25-6 月 - 2020

193 篇瀏覽

開啟你的職業生涯

完成課程,獲得認證

開始
廣告
© . All rights reserved.