首先,假定我们有以下数据:
product_id | attribute |
1 | 适用类型 |
1 | 药品类型 |
1 | 适应人群 |
1 | 剂型 |
2 | 颜色 |
3 | 颜色 |
3 | 尺寸 |
3 | 规格 |
通过mysql的group_concat函数,可以是数据如下展示:
product_id | group_concat(attribute) |
1 | 适用类型,药品类型,适应人群,剂型 |
2 | 颜色 |
3 | 颜色,尺寸,规格 |
简单来说group_concat函数作用,是能将相同的行组合起来,比较省事。
输出上述结果的mysql语句是这样写的:
select product_id,group_concat(attribute) from test_group_concat group by product_id;
当然,如果你不想通过“,”分隔行值,想用其他符号,比如“#”group_concat也是支持的。sql语句如下:
select product_id,group_concat(attribute separator '#') from test_group_concat group by product_id;
你可以自己在mysql中试着输入上面的语句,看输出结果。我这里就直接截图了。