GROUP BY句でMySQLSUM()関数を使用する利点は何ですか?
MySQL SUM()関数をGROUP BY句で使用する場合、SUM()関数はGROUPBY句で指定されたすべてのグループの合計を評価します。 GROUP BY句でSUM()を使用する利点は、特定のグループの合計を簡単に見つけることができることです。上記の概念を理解するために、次のレコードを持つ「employee_tbl」テーブルについて考えてみます-
mysql> SELECT * FROM employee_tbl; +------+------+------------+--------------------+ | id | name | work_date | daily_typing_pages | +------+------+------------+--------------------+ | 1 | John | 2007-01-24 | 250 | | 2 | Ram | 2007-05-27 | 220 | | 3 | Jack | 2007-05-06 | 170 | | 3 | Jack | 2007-04-06 | 100 | | 4 | Jill | 2007-04-06 | 220 | | 5 | Zara | 2007-06-06 | 300 | | 5 | Zara | 2007-02-06 | 350 | +------+------+------------+--------------------+ 7 rows in set (0.00 sec)
次のクエリは、1人の人物に関連するすべてのレコードを合計し、すべての人物が入力したページの総数になります。
mysql> SELECT name, SUM(daily_typing_pages) -> FROM employee_tbl GROUP BY name; +------+-------------------------+ | name | SUM(daily_typing_pages) | +------+-------------------------+ | Jack | 270 | | Jill | 220 | | John | 250 | | Ram | 220 | | Zara | 650 | +------+-------------------------+ 5 rows in set (0.17 sec)
-
MySQL GROUP BYおよびHAVINGを使用して、重複しないIDでレコードを表示します
まずテーブルを作成しましょう- mysql> create table DemoTable ( Id int, ColorName varchar(100) ); Query OK, 0 rows affected (0.56 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values(100,'Red'); Query OK, 1 row affected (0.11 sec) mysql> insert into
-
MySQL WHERE句でSUM()関数の結果を使用できますか?
MySQLのWHEREではなくHAVING句を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable ( Name varchar(50), Price int ); Query OK, 0 rows affected (0.79 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('Chris',30); Query OK, 1 row affected (0.15