dedlfix: Query Grundsatzfrage

Beitrag lesen

Tach!

Irgendwann hatte ich so ein Problem schonmal und meine, ich hätte da irgendwie mit CONCAT oder GROUP_CONCAT in einer correlated Subquery gearbeitet.

Nach dem Joinen gruppieren, und mit GROUP_CONCAT() bekommst du die Werte zum Beispiel kommasepariert aneinandergehängt. Das ergibt einen String und für eine Weiterverarbeitung müssten die Werte erst mit explode() (wenn wir PHP annehmen) separieren werden.

Alternativ nicht im DBMS gruppieren und stattdessen im abfragenden Programm die zusammengehörigen Werte (je MID in deinem Fall) zusammenführen.

Kriegt man das sql-seitig gebacken oder muss man in jedem Fall noch seine Programmiersprache bemühen? Ich vermute, in meinen 3 Tabellen reicht sql hierfür aus. Aber wie sieht es z.b. bei dem Trainer-Beispiel aus, wenn ich zu den Spielern selber noch viele weitere Daten wie Personendaten, Wohnortdaten, frühere Vereine, usw. aufzählen möchte. Klappt das auch noch mit SQL alleine oder nicht mehr?

Wenn mehr Werte zusammenzufassen sind, dann wird mit mehreren GROUP_CONCAT()s die Folgeverarbeitung komplexer. Dann kommt man mit Gruppenwechsel-Technik angenehmer weiter, also mit Zusammenführung der Dateien per Gruppe in der das SQL befragenden Umgebung.

dedlfix.