MySQLでGROUPBYを使用して行を取得しますか?
まずテーブルを作成しましょう-
mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Subject varchar(20), Price int ); Query OK, 0 rows affected (0.64 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable(Subject,Price) values('MySQL',456); Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable(Subject,Price) values('MySQL',456); Query OK, 1 row affected (0.12 sec) mysql> insert into DemoTable(Subject,Price) values('MongoDB',56); Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable(Subject,Price) values('MongoDB',60); Query OK, 1 row affected (0.13 sec) mysql> insert into DemoTable(Subject,Price) values('Java',100); Query OK, 1 row affected (0.20 sec) mysql> insert into DemoTable(Subject,Price) values('Java',130); Query OK, 1 row affected (0.15 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select *from DemoTable;
出力
+----+---------+-------+ | Id | Subject | Price | +----+---------+-------+ | 1 | MySQL | 456 | | 2 | MySQL | 456 | | 3 | MongoDB | 56 | | 4 | MongoDB | 60 | | 5 | Java | 100 | | 6 | Java | 130 | +----+---------+-------+ 6 rows in set (0.00 sec)
これは、MySQLでGROUBBYを使用して行を取得するためのクエリです-
mysql> select sum(Price) AS Total, Subject from DemoTable group by Subject;
出力
+-------+---------+ | Total | Subject | +-------+---------+ | 912 | MySQL | | 116 | MongoDB | | 230 | Java | +-------+---------+ 3 rows in set (0.04 sec)
-
MySQL:Group Byでフィールドを更新しますか?
GROUP BYでフィールドを更新するには、UPDATEコマンドでORDERBYLIMITを使用します- mysql> create table DemoTable2018 -> ( -> EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> EmployeeName varchar(20), -> EmployeeSalary int -> ); Query OK, 0 r
-
MySQL-同じIDのSUM行?
同じIDの行を合計するには、GROUPBYHAVING句を使用します。 テーブルを作成しましょう- 例 mysql> create table demo84 -> ( -> id int, -> price int -> ) -> ; Query OK, 0 rows affected (0.60 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 例 mysql> insert into demo84