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

MySQLでコンマで区切られた単一の行にすべての列の値を表示しますか?


これには、GROUP_CONCAT()およびCONCAT()を使用します。まずテーブルを作成しましょう-

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

挿入コマンド-

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

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

mysql> select * from DemoTable1807;

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

+------+
| Id   |
+------+
|  101 |
|  102 |
|  103 |
+------+
3 rows in set (0.00 sec)

これがSQLクエリをMySQLに変換するためのクエリです-

mysql> select group_concat(concat('[',Id,']'))  from DemoTable1807;

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

+----------------------------------+
| group_concat(concat('[',Id,']')) |
+----------------------------------+
| [101],[102],[103]                |
+----------------------------------+
1 row in set (0.00 sec)

  1. カンマ区切りのMySQL列から検索しますか?

    カンマ区切りの列から検索するには、FIND_IN_SET()メソッドを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Value varchar(20)    -> ); Query OK, 0 rows affected (0.47 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('41,14,94')

  2. MySQLで列の値を個別のテキストと連結し、単一の列に表示します

    最初にテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Id int,    -> Name varchar(20)    -> ); Query OK, 0 rows affected (0.93 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values(101,'Chris'); Query OK, 1