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

Làm cách nào để đếm số ngày trong MySQL?

Trước tiên, chúng ta hãy tạo một bảng với một cột là ngày giờ và một cột khác trong đó các ngày được lưu trữ:

mysql> create table DemoTable
(
   ShippingDate datetime,
   CountOfDate int
);
Query OK, 0 rows affected (0.52 sec)

Sau đây là truy vấn để chèn một số bản ghi trong bảng bằng cách sử dụng lệnh insert:

mysql> insert into DemoTable values('2018-01-31',6);
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values('2016-12-01',15);
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable values('2016-12-01',10);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values('2016-12-01',5);
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values('2019-04-09',3);
Query OK, 1 row affected (1.05 sec)
mysql> insert into DemoTable values('2018-01-31',4);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('2019-04-09',4);
Query OK, 1 row affected (0.14 sec)

Sau đây là truy vấn để hiển thị các bản ghi từ bảng bằng lệnh select:

mysql> select *from DemoTable;

Điều này sẽ tạo ra kết quả sau với Ngày và Số lượng:

+---------------------+-------------+
| ShippingDate        | CountOfDate |
+---------------------+-------------+
| 2018-01-31 00:00:00 |           6 |
| 2016-12-01 00:00:00 |          15 |
| 2016-12-01 00:00:00 |          10 |
| 2016-12-01 00:00:00 |           5 |
| 2019-04-09 00:00:00 |           3 |
| 2018-01-31 00:00:00 |           4 |
| 2019-04-09 00:00:00 |          4 |
+---------------------+-------------+
7 rows in set (0.00 sec)

Sau đây là truy vấn để lấy tổng của mỗi ngày:

mysql> select date(ShippingDate),sum(CountOfDate) from DemoTable group by date(ShippingDate);

Điều này sẽ tạo ra kết quả sau:

+--------------------+------------------+
| date(ShippingDate) | sum(CountOfDate) |
+--------------------+------------------+
| 2018-01-31         |               10 |
| 2016-12-01         |               30 |
| 2019-04-09         |                7 |
+--------------------+------------------+
3 rows in set (0.00 sec)