MySQLでカウントが最も多いフィールドを返します
カウントが最も高いフィールドを返すには、ORDER BY COUNT(*)を使用します。まずテーブルを作成しましょう-
mysql> create table DemoTable1940 ( FirstName varchar(20) ); Query OK, 0 rows affected (0.00 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable1940 values('Chris'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1940 values('Mike'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1940 values('Adam'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1940 values('Mike'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1940 values('Chris'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1940 values('David'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1940 values('Mike'); Query OK, 1 row affected (0.00 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select * from DemoTable1940;
これにより、次の出力が生成されます-
+-----------+ | FirstName | +-----------+ | Chris | | Mike | | Adam | | Mike | | Chris | | David | | Mike | +-----------+ 7 rows in set (0.00 sec)
カウントが最も多いフィールドを返すクエリは次のとおりです。
mysql> select * from DemoTable1940 group by FirstName order by count(*) desc limit 1;
これにより、次の出力が生成されます-
+-----------+ | FirstName | +-----------+ | Mike | +-----------+ 1 row in set (0.00 sec)
-
Javaを使用してMySQLテーブルの列数をカウントする
これには、ResultSetMetaDataを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> StudentFirstName varchar(20), -> StudentLastName varchar(20) -> ); Query OK, 0 r
-
MySQLを使用して、さまざまな行から単一のフィールドにリストを返します
これには、GROUP_CONCAT()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable2024 -> ( -> SubjectName varchar(20), -> StudentName varchar(20) -> ); Query OK, 0 rows affected (0.62 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert in