2016-09-21 66 views
3

我有一个sql表有多个行,其中我想从同一列值中获取单行SKU Column.I想要将多行从相同的sku值合并到一行中attribute_id和attribute_value的所有值。在一行中合并多行Mysql

enter image description here

+0

我不知道结果行应该如何看起来像。尤其是“具有attribute_id和attribute_value的所有值”的部分。这可以通过GROUP BY来完成,但是你真的需要知道你的值的集合应该是什么样子的(通常是例如MAX值,或者是数字总和)。据我所知,你的目标更多是为了一个GROUP_CONCAT(见http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html#function_group-concat) – Vafliik

回答

4

如果你是有逗号分隔每各sku属性ID和值列表OK,那么你可以使用GROUP_CONCAT

SELECT sku, 
     GROUP_CONCAT(attribute_id) AS attribute_id, 
     GROUP_CONCAT(attribute_value) AS attribute_value 
FROM yourTable 
GROUP BY sku 
+0

感谢它的工作.. 。 – Akhil