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

MySQLで重複(共通)要素の数をカウントする方法

MySQLで重複(共通)要素の数をカウントする方法

MySQLで重複している要素(共通要素)の数を数えるには、COUNT()関数とGROUP BY句を組み合わせて使用します。この記事では、テーブルの作成から集計クエリの実行まで、実際の手順を順番に解説していきます。

1. テーブルを作成する

まず、サンプル用のテーブルを作成しましょう。

mysql> create table DemoTable
    (
    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Number int
    );
Query OK, 0 rows affected (0.20 sec)

このテーブルは、自動採番されるIdカラム(主キー)と、数値を格納するNumberカラムで構成されています。

2. レコードを挿入する

INSERTコマンドを使って、テーブルにいくつかのレコードを追加します。

mysql> insert into DemoTable(Number) values(10);
Query OK, 1 row affected (0.06 sec)

mysql> insert into DemoTable(Number) values(20);
Query OK, 1 row affected (0.04 sec)

mysql> insert into DemoTable(Number) values(20);
Query OK, 1 row affected (0.04 sec)

mysql> insert into DemoTable(Number) values(30);
Query OK, 1 row affected (0.04 sec)

mysql> insert into DemoTable(Number) values(10);
Query OK, 1 row affected (0.05 sec)

mysql> insert into DemoTable(Number) values(10);
Query OK, 1 row affected (0.04 sec)

3. レコードを確認する

SELECT文ですべてのレコードを表示してみましょう。

mysql> select *from DemoTable;

実行結果は以下の通りです。

+----+--------+
| Id | Number |
+----+--------+
| 1  | 10     |
| 2  | 20     |
| 3  | 20     |
| 4  | 30     |
| 5  | 10     |
| 6  | 10     |
+----+--------+
6 rows in set (0.00 sec)

合計6件のレコードが登録されており、同じ数値が複数回出現していることがわかります。

4. 共通要素をカウントするクエリ

以下が、各数値の出現回数をカウントするクエリです。GROUP BYNumberカラムの値ごとにグループ化し、COUNT()関数でそれぞれの件数を集計しています。

mysql> select Number,count(Number) as CommonElement from DemoTable group by Number;

実行結果は以下の通りです。

+--------+---------------+
| Number | CommonElement |
+--------+---------------+
| 10     | 3             |
| 20     | 2             |
| 30     | 1             |
+--------+---------------+
3 rows in set (0.00 sec)

まとめ

この結果から、値「10」は3回、「20」は2回、「30」は1回出現していることが確認できます。このように、COUNT()GROUP BYを組み合わせることで、特定カラムにおける重複データの集計を簡単に行えます。データ分析や重複チェックなど、実務でも頻繁に使われる基本テクニックなので、ぜひマスターしておきましょう。

  1. MySQLで条件を指定してレコード数をカウントする方法

    MySQLで条件付きカウントを実現するにはMySQLで単純に件数を数える場合は COUNT() 関数を使用しますが、特定の条件に合致する行だけを数えたい場合は、集計関数 SUM() を活用すると便利です。SUM() の引数に条件式を渡すことで、条件を満たす行のみを効率的にカウントできます。ここでは、サンプルテーブルを作成し、実際に条件付きカウントを行う手順を解説します。1. サンプルテーブルの作成まず、以下のコマンドでテーブルを作成します。mysql> create table DemoTable1515    -> (  

  2. Pythonで文字列内の恐竜の数を数える方法

    「animals」という文字列と「dinosaurs」という文字列があるとします。animals の各文字は異なる種類の動物を表し、dinosaurs の一意な文字はそれぞれ異なる恐竜を表しています。このとき、animals 文字列の中に含まれる恐竜の総数を求める必要があります。 例えば、入力が animals = xyxzxyZ、dinosaurs = yZ の場合、出力は 3 になります。これは、恐竜の種類として y と Z の2種類があり、動物の文字列には y が2つ、Z が1つ含まれているためです。 解決のアプローチ この問題は、以下の手順で解くことができます。 結果を格納する変数