Problem:
Mehrere untergeordnete Zeilen aus einer Tabelle zu einer kombinieren Eine einzelne Zeile in einer anderen Tabelle ist eine häufige Aufgabe bei der Datenbankverwaltung. Stellen Sie sich das folgende Szenario vor:
Die gewünschte Ausgabe ist eine Tabelle, die den Elementnamen mit den entsprechenden Optionen in einer bestimmten Reihenfolge kombiniert. auch wenn die Reihenfolge in der Ordered_Options-Tabelle unterschiedlich ist.
Lösung:
Ein effektiver Ansatz für diese Aufgabe ist die Verwendung der GROUP_CONCAT-Funktion von MySQL. Diese Funktion ermöglicht die Verkettung von Werten aus mehreren Zeilen in einer einzigen Zeichenfolge.
Die folgende Abfrage demonstriert die Verwendung von GROUP_CONCAT:
SELECT Ordered_Item.ID AS `Id`, Ordered_Item.Item_Name AS `ItemName`, GROUP_CONCAT(Ordered_Options.Value) AS `Options` FROM Ordered_Item INNER JOIN Ordered_Options ON Ordered_Item.ID = Ordered_Options.Ordered_Item_ID GROUP BY Ordered_Item.ID
Ausgabe:
Diese Abfrage gibt eine Tabelle mit den folgenden Spalten zurück:
Id | ItemName | Options |
---|---|---|
1 | Pizza | Pepperoni, Extra Cheese |
2 | Stromboli | Extra Cheese |
Die Spalte „Optionen“ konsolidiert die Optionen für jedes Element in der gewünschten Reihenfolge.
Zusätzliche Überlegungen:
Das obige ist der detaillierte Inhalt vonWie kann ich mit GROUP_CONCAT mehrere untergeordnete Zeilen in MySQL zu einer einzigen Zeile kombinieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!