在 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)

更新時間:11-Dec-2019

359 次瀏覽量

開啟你的職業生涯

完成課程以獲取認證

開始
廣告