Hallo,
und zwar habe ich folgendes Problem:
Für eine vorgegebene Aufgabenverwaltungssoftware (trac) trage ich in das Feld 'zuständige Personen' mehrere Personen per Komma getrennt ein. Den Programmcode von Trac kann ich leider nicht verändern.
Die Tabelle in der DB sieht dann ca. so aus:
id | text | owner
1 | Spülmaschine ausräumen | Alice, Bob
2 | Rasen mähen | Bob
3 | Haus putzen | Alice, Bob, Carla
Nun kann ich bei der Software eigene SQL Befehle angeben, die sodann in Berichte erzeugt werden. Nun möchte ich einen Bericht erstellen, der die einzelnen Aufgaben je Person anzeigt, also in etwa so:
Alice:
1 | Spülmaschine ausräumem
3 | Haus putzen
Bob:
1 | Spülmaschine ausräumen
2 | Rasen mähen
3 | Haus putzen
Carla:
3 | Haus putzen
Da ich wie gesagt nur einen enzigen SQL Befehl definieren kann, würde ich das oben gewünschte Ergebnis erhalten falls dieser SQL Befehl folgendes Ergebnis zurückliefern würde:
id | text | person
1 | Spülmaschine ausräumen | Alice
1 | Spülmaschine ausräumen | Bob
2 | Rasen mähen | Bob
3 | Haus putzen | Alice
3 | Haus putzen | Bob
3 | Haus putzen | Carla
Gibt es dort irgendwie eine Möglichkeit, dass ich MySQL sage, dass dieses den Inhalt der Spalte 'owner' anhand des Komma trennen soll und für jeden Substring eine neue Zeile generieren soll?
Ich weiß, dass dieses Tabellenschema gegen die 1. Normalform verstößt, da aber am Programmcode keine Veränderungen vorgenommen werden kann, bin ich nunmal auf solch eine Lösung angewiesen.
Hoffe auf Hilfe.