2016-09-21 7 views
3

Ich habe eine SQL-Tabelle mit mehreren Zeilen, in denen ich einzelne Zeile aus der gleichen Spalte Wert in meinem Fall SKU Column.I wollen mehrere Zeilen von gleichen SKU-Wert in eine Zeile zusammenführen haben Alle Werte von attribute_id und attribute_value.Mehrere Zeilen in einer Zeile zusammenfassen Mysql

enter image description here

+0

Ich bin nicht sicher, wie die resultierende Zeile sollte aussehen wie. Vor allem der Teil "mit allen Werten von attribute_id und attribute_value". Dies würde von GROUP BY erledigt, aber Sie müssen wirklich wissen, wie die Aggregation Ihrer Werte aussehen sollte (normalerweise ist es beispielsweise MAX-Wert oder SUM von Zahlen). Soweit ich weiß, zielen Sie mehr auf eine GROUP_CONCAT (siehe http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html#function_group-concat) – Vafliik

Antwort

4

Wenn Sie eine durch Kommata getrennte Liste von Attribut IDs und Werte mit, die für jeden sku in Ordnung sind, dann könnten Sie GROUP_CONCAT verwenden:

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

Danke, es funktioniert .. . – Akhil

Verwandte Themen