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