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

MySQL-同じIDのSUM行?


同じIDの行を合計するには、GROUPBYHAVING句を使用します。

テーブルを作成しましょう-

mysql> create table demo84
   -> (
   -> id int,
   -> price int
   -> )
   -> ;
Query OK, 0 rows affected (0.60

挿入コマンド-

を使用して、いくつかのレコードをテーブルに挿入します。

mysql> insert into demo84 values(1,2000);
Query OK, 1 row affected (0.08

mysql> insert into demo84 values(1,2000);
Query OK, 1 row affected (0.14

mysql> insert into demo84 values(2,1800);
Query OK, 1 row affected (0.14

mysql> insert into demo84 values(2,2200);
Query OK, 1 row affected (0.14

mysql> insert into demo84 values(3,1700);
Query OK, 1 row affected (0.12

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

mysql> select *from demo84;

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

出力

+------+-------+

| id   | price |

+------+-------+

|    1 |  2000 |

|    1 |  2000 |

|    2 |  1800 |

|    2 |  2200 |

|    3 |  1700 |

+------+-------+

5 rows in set (0.00 sec)

以下は、同じIDの行を合計するためのクエリです-

mysql> select id,sum(price) as Total from demo84
   -> group by id
   -> having sum(demo84.price) >=2000;

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

出力

+------+-------+

| id   | Total |

+------+-------+

|    1 |  4000 |

|    2 |  4000 |

+------+-------+

2 rows in set (0.00 sec)


  1. MySQLでグループ化して選択して合計しますか?

    合計するには、集計関数SUM()を使用します。それで、MySQLGROUPBYを使用してグループ化します。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> ProductName varchar(20),    -> ProductQuantity int,    -> ProductPrice int    -> ); Query OK, 0 rows affected (0.63 sec

  2. MySQLを使用してテーブル内の特定の行のみを削除する

    特定の行のみを削除するには、MySQL NOT IN()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1830      (      StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,      StudentName varchar(20)      )AUTO_INCREMENT=101; Query OK, 0 rows affected (0.00 se