从 MySQL 表中选择并相加两列相乘的结果?


你可以使用聚合函数 SUM()。我们首先创建一个表 -

mysql> create table DemoTable
   (
   CustomerId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   CustomerProductName varchar(100),
   CustomerProductQuantity int,
   CustomerPrice int
   );
Query OK, 0 rows affected (0.17 sec)

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

mysql> insert into DemoTable(CustomerProductName,CustomerProductQuantity,CustomerPrice) values('Product-1',5,400);
Query OK, 1 row affected (0.10 sec)

mysql> insert into DemoTable(CustomerProductName,CustomerProductQuantity,CustomerPrice) values('Product-2',3,100);
Query OK, 1 row affected (0.06 sec)

mysql> insert into DemoTable(CustomerProductName,CustomerProductQuantity,CustomerPrice) values('Product-1',2,300);
Query OK, 1 row affected (0.06 sec)

mysql> insert into DemoTable(CustomerProductName,CustomerProductQuantity,CustomerPrice) values('Product-1',5,50);
Query OK, 1 row affected (0.08 sec)

mysql> insert into DemoTable(CustomerProductName,CustomerProductQuantity,CustomerPrice) values('Product-3',6,10);
Query OK, 1 row affected (0.06 sec)

mysql> insert into DemoTable(CustomerProductName,CustomerProductQuantity,CustomerPrice) values('Product-2',10,20);
Query OK, 1 row affected (0.03 sec)

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

mysql> select *from DemoTable;

这将产生以下输出 -

+------------+---------------------+-------------------------+---------------+
| CustomerId | CustomerProductName | CustomerProductQuantity | CustomerPrice |
+------------+---------------------+-------------------------+---------------+
| 1          | Product-1           | 5                       | 400           |
| 2          | Product-2           | 3                       | 100           |
| 3          | Product-1           | 2                       | 300           |
| 4          | Product-1           | 5                       | 50            |
| 5          | Product-3           | 6                       | 10            |
| 6          | Product-2           | 10                      | 20            |
+------------+---------------------+-------------------------+---------------+
6 rows in set (0.00 sec)

以下是从 MySQL 表中选择和相加两列 (CustomerProductQuantity*CustomerPrice) 乘积结果的查询。

mysql> select CustomerProductName,
SUM(CustomerProductQuantity*CustomerPrice) AS TOTAL_PRICE
from DemoTable
group by CustomerProductName;

这将产生以下输出 -

+---------------------+-------------+
| CustomerProductName | TOTAL_PRICE |
+---------------------+-------------+
| Product-1           | 2850        |
| Product-2           | 500         |
| Product-3           | 60          |
+---------------------+-------------+
3 rows in set (0.00 sec)

更新于: 30-7-2019

673 次浏览

开启你的 职业

完成课程获得认证

开始
广告