GROUP_CONCAT()

この関数は、グループからの連結された非 NULL 値を伴うストリング結果を戻します。
非 NULL 値がない場合は NULL を戻します。

GROUP_CONCAT() によって戻されるタイプは、group_concat_max_len が 512
より大きい場合意外は常に VARCHAR になります。512 を越える場合は BLOB になります。

GROUP_CONCAT([DISTINCT] expr [,expr …]
[ORDER BY {unsigned_integer | col_name | expr}
[ASC | DESC] [,col_name …]]
[SEPARATOR str_val])


mysql> select
-> TABLE_SCHEMA,TABLE_NAME
-> from information_schema.TABLES
-> where TABLE_SCHEMA = 'test';
+--------------+----------------+
| TABLE_SCHEMA | TABLE_NAME |
+--------------+----------------+
| test | A10 |
| test | T10 |
| test | a10 |
| test | innodb_monitor |
| test | innodbtable |
| test | t10 |
+--------------+----------------+
6 rows in set (0.00 sec)

mysql> select
-> TABLE_SCHEMA,
-> GROUP_CONCAT(TABLE_NAME SEPARATOR '/')
-> from information_schema.TABLES
-> where TABLE_SCHEMA = 'test';
+--------------+--------------------------------------------+
| TABLE_SCHEMA | GROUP_CONCAT(TABLE_NAME SEPARATOR '/') |
+--------------+--------------------------------------------+
| test | A10/T10/a10/innodb_monitor/innodbtable/t10 |
+--------------+--------------------------------------------+
1 row in set (0.00 sec)

group_concat1

    参考サイト

11.11.1. GROUP BY ( 集約 ) 関数

Comments are closed.

Post Navigation