Computer >> Máy Tính >  >> Lập trình >> MySQL

Nhận số tuần trong MySQL cho ngày trong tuần?

Hàm DAYOFWEEK () của MySQL trả về 1 cho Chủ Nhật, 2 cho Thứ Hai, v.v. cho các ngày trong tuần. Hãy để chúng tôi xem một ví dụ bằng cách tạo một bảng trước tiên -

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

Chèn ngày vào bảng với sự trợ giúp của lệnh insert. Truy vấn như sau -

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)

Bây giờ bạn có thể hiển thị số lượng bản ghi có trong bảng với sự trợ giúp của câu lệnh select. Truy vấn như sau -

mysql> select *from DayOfWeekDemo;

Sau đây là kết quả -

+---------------------+
| 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)

Nhìn vào bảng trên:2018-12-03 là Thứ Hai, 2018-12-04 là Thứ Ba, v.v. Sau đây là truy vấn để trả về chỉ mục của ngày trong tuần -

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

Sau đây là kết quả hiển thị số ngày trong tuần -

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