MySQL查询将来自相同列的相同客户的产品价格值求和,并将结果显示在同一列中

为此,将SUM()与GROUP BY一起使用。让我们首先创建一个表-

create table DemoTable
(
   CustomerName varchar(100),
   Product_1_Price int,
   Product_2_Price int
);

使用插入命令在表中插入一些记录-

insert into DemoTable values('John',67,89);
insert into DemoTable values('David',769,890);
insert into DemoTable values('David',987,1000);
insert into DemoTable values('John',900,111);

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

select *from DemoTable;

这将产生以下输出-

+--------------+-----------------+-----------------+
| CustomerName | Product_1_Price | Product_2_Price |
+--------------+-----------------+-----------------+
| John         |              67 |              89 |
| David        |             769 |             890 |
| David        |             987 |            1000 |
| John         |             900 |             111 |
+--------------+-----------------+-----------------+
4 rows in set (0.00 sec)

以下是对值求和并显示相同客户的结果的查询-

select CustomerName,SUM(Product_1_Price) AS Total1,SUM(Product_2_Price) As Total2 from DemoTable group by CustomerName;

这将产生以下输出-

+--------------+--------+--------+
| CustomerName | Total1 | Total2 |
+--------------+--------+--------+
| John         |    967 |    200 |
| David        |   1756 |   1890 |
+--------------+--------+--------+
2 rows in set (0.00 sec)