特定の列を持つ行をカウントするMySQLクエリ?
まずテーブルを作成しましょう-
mysql> create table DemoTable841( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Value varchar(100) ); Query OK, 0 rows affected (0.67 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable841(Value) values('X'); Query OK, 1 row affected (0.19 sec) mysql> insert into DemoTable841(Value) values('Y'); Query OK, 1 row affected (0.39 sec) mysql> insert into DemoTable841(Value) values('Y'); Query OK, 1 row affected (1.62 sec) mysql> insert into DemoTable841(Value) values('Z'); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable841(Value) values('X'); Query OK, 1 row affected (0.81 sec) mysql> insert into DemoTable841(Value) values('Z'); Query OK, 1 row affected (0.26 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select *from DemoTable841;
これにより、次の出力が生成されます-
+----+-------+ | Id | Value | +----+-------+ | 1 | X | | 2 | Y | | 3 | Y | | 4 | Z | | 5 | X | | 6 | Z | +----+-------+ 6 rows in set (0.00 sec)
以下は、MySQLの特定の列を持つ行をカウントするためのクエリです-
mysql> select Value,Concat(COUNT(Value),' Times') from DemoTable841 group by Value;
これにより、次の出力が生成されます-
+-------+-------------------------------+ | Value | Concat(COUNT(Value),' Times') | +-------+-------------------------------+ | X | 2 Times | | Y | 2 Times | | Z | 2 Times | +-------+-------------------------------+ 3 rows in set (0.04 sec)
-
MySQLの行を列の値で配列にグループ化しますか?
配列内の行をグループ化するには、ORDER BY句とともにGROUP_CONCAT()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> Id int, -> FirstName varchar(20) -> ); Query OK, 0 rows affected (0.78 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert i
-
MySQLで特定の列の値(名前)を取得する
特定の列値をフェッチするには、LIKE句を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1809 ( Name varchar(20) ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1809 values('John'); Query