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

MySQLテーブル内のレコードの出現回数をカウントし、その結果を新しい列に表示しますか?


このために、GROUP BY句とともにCOUNT(*)を使用します。まずテーブルを作成しましょう-

mysql> create table DemoTable1942
   (
   Value int
   );
Query OK, 0 rows affected (0.00 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable1942 values(1);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1942 values(2);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1942 values(3);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1942 values(2);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1942 values(3);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1942 values(3);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1942 values(1);
Query OK, 1 row affected (0.00 sec)

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

mysql> select * from DemoTable1942;

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

+-------+
| Value |
+-------+
|     1 |
|     2 |
|     3 |
|     2 |
|     3 |
|     3 |
|     1 |
+-------+
7 rows in set (0.00 sec)

発生数をカウントするためのクエリは次のとおりです。

mysql> select Value, count(*) from DemoTable1942
   group by Value;

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

+-------+----------+
| Value | count(*) |
+-------+----------+
|     1 |        2 |
|     2 |        2 |
|     3 |        3 |
+-------+----------+
3 rows in set (0.00 sec)

  1. 重複するIDをカウントし、結果をMySQLの別の列に表示します

    まずテーブルを作成しましょう- mysql> create table DemoTable1453    -> (    -> CustomerId int,    -> CustomerReviewNumber int    -> ); Query OK, 0 rows affected (0.58 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1453 values(10,4); Que

  2. MySQLでテーブルを更新し、新しい列にイニシャル名のみを表示します

    イニシャルを取得するには、substring_index()とともにleft()の概念を使用します。 テーブルを作成しましょう- mysql> create table demo13 −> ( −> full_name varchar(100), −> short_name varchar(20) −> ); Query OK, 0 rows affected (1.18 sec) 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 mysql> insert into demo13(fu