MySQL - 根据日期进行 GROUP 和 COUNT?
你可以使用 GROUP BY 子句和 COUNT() 函数来实现。语法如下所示 −
SELECT yourColumnName1,yourColumnName2,..N,COUNT(*) as anyAliasName FROM yourTableName GROUP BY yourColumnName1,yourColumnName2;
为了理解上述语法,让我们创建一个表。用于创建表的查询如下 −
mysql> create table GroupAndCountByDate -> ( -> Id int NOT NULL AUTO_INCREMENT, -> TripDate date, -> ShopId int, -> PRIMARY KEY(Id) -> ); Query OK, 0 rows affected (0.79 sec)
现在,你可以使用 insert 命令在表中输入一些记录了。查询如下 −
mysql> insert into GroupAndCountByDate(TripDate,ShopId) values('2019-01-31',10);
Query OK, 1 row affected (0.52 sec)
mysql> insert into GroupAndCountByDate(TripDate,ShopId) values('2019-02-01',15);
Query OK, 1 row affected (0.17 sec)
mysql> insert into GroupAndCountByDate(TripDate,ShopId) values('2019-01-31',10);
Query OK, 1 row affected (0.23 sec)
mysql> insert into GroupAndCountByDate(TripDate,ShopId) values('2019-02-01',15);
Query OK, 1 row affected (0.31 sec)
mysql> insert into GroupAndCountByDate(TripDate,ShopId) values('2019-03-23',20);
Query OK, 1 row affected (0.15 sec)
mysql> insert into GroupAndCountByDate(TripDate,ShopId) values('2019-04-21',25);
Query OK, 1 row affected (0.20 sec)
mysql> insert into GroupAndCountByDate(TripDate,ShopId) values('2019-03-13',20);
Query OK, 1 row affected (0.16 sec)
mysql> insert into GroupAndCountByDate(TripDate,ShopId) values('2019-04-06',25);
Query OK, 1 row affected (0.17 sec)使用 select 语句显示表中的所有记录。查询如下 −
mysql> select *from GroupAndCountByDate;
以下是输出 −
+----+------------+--------+ | Id | TripDate | ShopId | +----+------------+--------+ | 1 | 2019-01-31 | 10 | | 2 | 2019-02-01 | 15 | | 3 | 2019-01-31 | 10 | | 4 | 2019-02-01 | 15 | | 5 | 2019-03-23 | 20 | | 6 | 2019-04-21 | 25 | | 7 | 2019-03-13 | 20 | | 8 | 2019-04-06 | 25 | +----+------------+--------+ 8 rows in set (0.00 sec)
以下是按日期分组和计数的查询 −
mysql> select TripDate,ShopId,COUNT(*) as TOTALTRIP -> from GroupAndCountByDate -> group by TripDate,ShopId;
以下是输出 −
+------------+--------+-----------+ | TripDate | ShopId | TOTALTRIP | +------------+--------+-----------+ | 2019-01-31 | 10 | 2 | | 2019-02-01 | 15 | 2 | | 2019-03-23 | 20 | 1 | | 2019-04-21 | 25 | 1 | | 2019-03-13 | 20 | 1 | | 2019-04-06 | 25 | 1 | +------------+--------+-----------+ 6 rows in set (0.00 sec)
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
JavaScript
PHP