MySQL 数据透视表 - 如何将动态列转换为行?

MySQL PivotTable - How to convert dynamic columns to rows?

我想将以下数据库 table 从动态列转换为 MySQL 中的行:

我已经深入研究了 whosebug.com 以及这个很好的例子 here 但是 none 个案例符合我的要求。
如果上面的 link 示例是动态的(我不知道 'color' 或 'size' 的值,因为它是动态变化的,则符合我的要求):

SELECT
item_id,
MAX(IF(property_name = 'color', value, NULL)) AS color,
MAX(IF(property_name = 'size', value, NULL)) AS size,
...
...
...
FROM
properties
GROUP BY
item_id;


所以这是我的数据库 Table:

id | customer_id | customer_tbl_id | customer_tbl_col_name
 1 |           1 |               1 | CustomerColName_1
 2 |           1 |               1 | CustomerColName_2
 3 |           1 |               1 | CustomerColName_3
 4 |           1 |               2 | CustomerColName_4
 5 |           1 |               2 | CustomerColName_5
 6 |           2 |               1 | CustomerColName_6
 7 |           2 |               1 | CustomerColName_7

现在我的 SQL 查询结果应该是这样的:

1 (customer_id) | 1 (customer_tbl_id) | CustomerColName_1 | CustomerColName_2 | CustomerColName_3
1 (customer_id) | 2 (customer_tbl_id) | CustomerColName_4 | CustomerColName_5
2 (customer_id) | 1 (customer_tbl_id) | CustomerColName_6 | CustomerColName_7

使用GROUP_CONCAT

SELECT customer_id, customer_tbl_id, GROUP_CONCAT(customer_tbl_col_name) as customer_tbl_col_name 
FROM table
GROUP BY  customer_id , customer_tbl_id