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

MySQLで3回以上出現するレコードを表示しますか?


このために、GROUPBYHAVING句を使用できます。まずテーブルを作成しましょう-

mysql> create table DemoTable
   -> (
   -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> Subject varchar(100)
   -> );
Query OK, 0 rows affected (0.53 sec)

挿入コマンド-

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

mysql> insert into DemoTable(Subject) values('MongoDB');
Query OK, 1 row affected (0.09 sec)

mysql> insert into DemoTable(Subject) values('MySQL');
Query OK, 1 row affected (0.10 sec)

mysql> insert into DemoTable(Subject) values('Java');
Query OK, 1 row affected (0.56 sec)

mysql> insert into DemoTable(Subject) values('SQL Server');
Query OK, 1 row affected (0.15 sec)

mysql> insert into DemoTable(Subject) values('MongoDB');
Query OK, 1 row affected (0.13 sec)

mysql> insert into DemoTable(Subject) values('MySQL');
Query OK, 1 row affected (0.48 sec)

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

mysql> select *from DemoTable;

出力

+----+------------+
| Id | Subject    |
+----+------------+
| 1  | MySQL      |
| 2  | MongoDB    |
| 3  | MySQL      |
| 4  | Java       |
| 5  | SQL Server |
| 6  | MongoDB    |
| 7  | MySQL      |
+----+------------+
7 rows in set (0.00 sec)

以下は、MySQLで2回以上出現する個別のレコードを表示するためのクエリです。

mysql> select Subject,count(Subject) freq from DemoTable
   -> group by Subject
   -> having count(Subject) > 2;

出力

+---------+------+
| Subject | freq |
+---------+------+
| MySQL   | 3    |
+---------+------+
1 row in set (0.00 sec)

  1. MySQLで日付をグループ化してレコードを表示する

    MySQLで日付をグループ化するには、GROUPBY句-を使用します mysql> create table DemoTable2002 (    CustomerName varchar(20),    CustomerShippingDate datetime ); Query OK, 0 rows affected (0.61 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable2002 values('Chris','2019-

  2. MySQLでTRUEFALSEレコードを01として表示する

    0と1の値を表示するには、列をBOOLEANに設定します。テーブルを作成しましょう- mysql> create table DemoTable2035    -> (    -> Id int NOT NULL AUTO_INCREMENT,    -> Name varchar(20),    -> isMarried boolean,    -> PRIMARY KEY(Id)    -> ); Query OK, 0 rows