在 MYSQL 中查找重复产品 id 中对应记录(产品价格)的平均值
为此,使用 AVG() 度量平均值以及 GROUP BY 对重复列(产品 ID)的记录分组。我们先创建一个表格 −
mysql> create table DemoTable1490 -> ( -> ProductId varchar(20), -> ProductPrice int -> ); Query OK, 0 rows affected (0.43 sec)
使用插入命令在表格中插入一些记录 −
mysql> insert into DemoTable1490 values('PRODUCT_100',700); Query OK, 1 row affected (0.11 sec) mysql> insert into DemoTable1490 values('PRODUCT_200',500); Query OK, 1 row affected (0.31 sec) mysql> insert into DemoTable1490 values('PRODUCT_200',1000); Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable1490 values('PRODUCT_100',1300); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable1490 values('PRODUCT_200',300); Query OK, 1 row affected (0.14 sec)
使用选择语句显示表格中的所有记录 −
mysql> select * from DemoTable1490;
这将生成以下输出 −
+-------------+--------------+ | ProductId | ProductPrice | +-------------+--------------+ | PRODUCT_100 | 700 | | PRODUCT_200 | 500 | | PRODUCT_200 | 1000 | | PRODUCT_100 | 1300 | | PRODUCT_200 | 300 | +-------------+--------------+ 5 rows in set (0.00 sec)
这是查找平均值所需的查询 −
mysql> select ProductId,avg(ProductPrice) from DemoTable1490 -> group by ProductId;
这将生成以下输出 −
+-------------+-------------------+ | ProductId | avg(ProductPrice) | +-------------+-------------------+ | PRODUCT_100 | 1000.0000 | | PRODUCT_200 | 600.0000 | +-------------+-------------------+ 2 rows in set (0.03 sec)
广告