MySQL where句を使用し、avg()で順序付けして、重複する個々の要素の平均を見つけます
これには、whereの代わりにhave句を使用します。まずテーブルを作成しましょう-
mysql> create table DemoTable1338 -> ( -> Name varchar(10), -> Score int -> ); Query OK, 0 rows affected (1.54 sec)
挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。ここでは、スコア付きの重複した名前を挿入しました-
mysql> insert into DemoTable1338 values('Chris',8); Query OK, 1 row affected (0.80 sec) mysql> insert into DemoTable1338 values('Bob',4); Query OK, 1 row affected (0.20 sec) mysql> insert into DemoTable1338 values('Bob',9); Query OK, 1 row affected (0.27 sec) mysql> insert into DemoTable1338 values('Chris',6); Query OK, 1 row affected (0.27 sec) mysql> insert into DemoTable1338 values('David',5); Query OK, 1 row affected (0.23 sec) mysql> insert into DemoTable1338 values('David',7); Query OK, 1 row affected (0.40 sec)>
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select * from DemoTable1338;
これにより、次の出力が生成されます-
+-------+-------+ | Name | Score | +-------+-------+ | Chris | 8 | | Bob | 4 | | Bob | 9 | | Chris | 6 | | David | 5 | | David | 7 | +-------+-------+ 6 rows in set (0.00 sec)
以下は、重複する個々の要素の平均を見つけるためのクエリです-
mysql> select Name,avg(Score) from DemoTable1338 -> group by Name -> having avg(Score) < 9.5 -> order by avg(Score);
これにより、次の出力が生成されます-
+-------+------------+ | Name | avg(Score) | +-------+------------+ | David | 6.0000 | | Bob | 6.5000 | | Chris | 7.0000 | +-------+------------+ 3 rows in set (0.00 sec)
-
重複するタプルを見つけてカウントを表示するMySQLクエリ?
重複するタプルを見つけるには、GROUPBYHAVING句を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> Id int, -> Name varchar(20) -> ); Query OK, 0 rows affected (0.80 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable value
-
MySQLで重複する列の値を見つけて、それらを表示します
これには、GROUPBYHAVING句を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1858 ( ModelNumber varchar(50) ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1858 values('Audi A4'