MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MYSQLの重複する製品IDから対応するレコードの平均(製品価格)を検索します


このためには、平均にAVG()を使用し、重複する列(製品ID)のレコードをグループ化するためにGROUPBYを使用します。まずテーブルを作成しましょう-

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)

selectステートメントを使用してテーブルのすべてのレコードを表示する-

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)

  1. MySQLの対応する重複IDから最大量を表示する

    対応する重複IDから最大量を表示するには、MAX()をGROUPBY句とともに使用します- mysql> create table DemoTable2003 (    CustomerId int,    Amount int ); Query OK, 0 rows affected (0.65 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable2003 values(101,560); Query OK, 1 row affected (0.12 sec

  2. MySQLの対応する重複IDを持つ列(浮動値)から最小値を取得します

    対応する重複IDを持つ列から最小値を取得するには、GROUP BYおよびMIN()-を使用します select min(yourColumnName) from yourTableName group by yourColumnName; 上記の構文を理解するために、テーブルを作成しましょう- mysql> create table DemoTable2005 (    Id int,    Price float ); Query OK, 0 rows affected (0.71 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコ