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

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)
mysql> insert into DemoTable2003 values(102,1080);
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable2003 values(101,570);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable2003 values(102,870);
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable2003 values(101,460);
Query OK, 1 row affected (0.12 sec)

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

mysql> select * from DemoTable2003;

これにより、次の出力が生成されます-

+------------+--------+
| CustomerId | Amount |
+------------+--------+
|        101 |    560 |
|        102 |   1080 |
|        101 |    570 |
|        102 |    870 |
|        101 |    460 |
+------------+--------+
5 rows in set (0.00 sec)

対応する重複IDから最大量を表示するためのクエリは次のとおりです-

mysql> select CustomerId, max(Amount) from DemoTable2003
   group by CustomerId;

これにより、次の出力が生成されます-

+------------+-------------+
| CustomerId | max(Amount) |
+------------+-------------+
|        101 |         570 |
|        102 |        1080 |
+------------+-------------+
2 rows in set (0.00 sec)

  1. 重複するIDから対応する最大値をフェッチするためのMySQL行の連結?

    このために、GROUPBY句を使用できます。最大値を見つけるには、MAX()関数を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1804      (      Id int,      Marks1 int,      Marks2 int,      Marks3 int      ); Query OK, 0 rows affected (0.00

  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) 挿入コマンド-を使用して、テーブルにいくつかのレコ