从相似日期记录中求和 MySQL 中的值


使用 GROUP BY 和 DATE() 来实现这一目的。我们首先创建一个表 -

mysql> create table DemoTable1358
    -> (
    -> PurchaseDate datetime,
    -> ProductPrice int
    -> );
Query OK, 0 rows affected (1.59 sec)

使用 insert 命令在表中插入一些记录。在这里,我们插入日期记录,其中一些记录具有类似的日期 -

mysql> insert into DemoTable1358 values('2019-09-20 12:34:00', 450);
Query OK, 1 row affected (0.23 sec)
mysql> insert into DemoTable1358 values('2019-09-21 11:00:00', 1050);
Query OK, 1 row affected (0.27 sec)
mysql> insert into DemoTable1358 values('2018-09-21 02:10:00', 2050);
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable1358 values('2019-09-21 05:20:40', 5050);
Query OK, 1 row affected (0.23 sec)
mysql> insert into DemoTable1358 values('2016-09-21 04:10:56', 1000);
Query OK, 1 row affected (0.18 sec)

使用 select 语句显示表中的所有记录 -

mysql> select * from DemoTable1358;

这将产生以下输出 -

+---------------------+--------------+
| PurchaseDate        | ProductPrice |
+---------------------+--------------+
| 2019-09-20 12:34:00 |          450 |
| 2019-09-21 11:00:00 |         1050 |
| 2018-09-21 02:10:00 |         2050 |
| 2019-09-21 05:20:40 |         5050 |
| 2016-09-21 04:10:56 |         1000 |
+---------------------+--------------+
5 rows in set (0.00 sec)

以下是求和相同日期的 ProductPrice 值的查询 -

mysql> select PurchaseDate,sum(ProductPrice) from DemoTable1358
    -> group by date(PurchaseDate);

这将产生以下输出 -

+---------------------+-------------------+
| PurchaseDate        | sum(ProductPrice) |
+---------------------+-------------------+
| 2019-09-20 12:34:00 |               450 |
| 2019-09-21 11:00:00 |              6100 |
| 2018-09-21 02:10:00 |              2050 |
| 2016-09-21 04:10:56 |              1000 |
+---------------------+-------------------+
4 rows in set (0.00 sec)

更新于: 2019 年 11 月 5 日

757 次浏览量

开启你的 职业生涯

完成课程,获得认证

开始
广告