他の列値を持つグループ内の最大カウント値を持つレコードを表示するMySQLクエリ?
これには、GROUPBYHAVING句を使用します。まずテーブルを作成しましょう-
mysql> create table DemoTable ( Value int ); Query OK, 0 rows affected (0.54 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable values(88); Query OK, 1 row affected (0.22 sec) mysql> insert into DemoTable values(88); Query OK, 1 row affected (0.10 sec) mysql> insert into DemoTable values(88); Query OK, 1 row affected (0.09 sec) mysql> insert into DemoTable values(99); Query OK, 1 row affected (0.09 sec) mysql> insert into DemoTable values(99); Query OK, 1 row affected (0.09 sec) mysql> insert into DemoTable values(99); Query OK, 1 row affected (0.10 sec) mysql> insert into DemoTable values(99); Query OK, 1 row affected (0.07 sec) mysql> insert into DemoTable values(100); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values(100); Query OK, 1 row affected (0.07 sec) mysql> insert into DemoTable values(88); Query OK, 1 row affected (0.19 sec) mysql> insert into DemoTable values(88); Query OK, 1 row affected (0.11 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select *from DemoTable;
これにより、次の出力が生成されます-
+-------+ | Value | +-------+ | 88 | | 88 | | 88 | | 99 | | 99 | | 99 | | 99 | | 100 | | 100 | | 88 | | 88 | +-------+ 11 rows in set (0.00 sec)
以下は、他の列を持つグループの最大カウント値を持つレコードを表示するためのクエリです。ここでは、列に値を繰り返し、値を並べ替えています。 ORDER BY DESCの後、最初の値をフェッチし、そのカウントを新しい列「NumberOfCount」-
に表示します。mysql> select Value,count(*) as NumberOfCount from DemoTable group by Value having count(*)=(select count(*) as NumberOfCount from DemoTable group by Value order by NumberOfCount desc limit 1);
これにより、次の出力が生成されます-
+-------+---------------+ | Value | NumberOfCount | +-------+---------------+ | 88 | 5 | +-------+---------------+ 1 row in set (0.00 sec)
-
MySQLで列の値をシャッフルしますか?
要素をシャッフルするには、ORDER BY RAND()を使用する必要があります。まずテーブルを作成しましょう- mysql> create table DemoTable1557 -> ( -> SubjectId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> SubjectName varchar(20) -> ); Query OK, 0 rows affected (0.91 sec) 挿入コマンド-を使用して
-
単一のMySQLクエリで列に複数の値を挿入するにはどうすればよいですか?
列に複数の値を挿入するための構文は次のとおりです- insert into yourTableName values(yourValue1),(yourValue2),..........N; 上記の構文を理解するために、テーブルを作成しましょう- mysql> create table DemoTable2022 -> ( -> Department varchar(100) -> ); Query OK, 0 rows affected (0.49 sec) 挿入コマンド-を使用して、