Tach!
Hallo,
und danke für die Tipps!
Diese Formatierungen füge ich bereits in der SQL-Abfrage ein (GROUP_CONCAT),
Welchen Zweck soll die Gruppierung erfüllen? Warum fragst du nciht einfach nur die Daten ab und formatierst sie im abfragenden Programm?
Meine Idee war es, gleich bei der SQL-Abfrage die Formatierung vorzunehmen (eigentlich hatte ich sogar vier Teil-Abfragen):
Datum vor $heute und gebucht: Uhrzeit ohne Link, mit Text gebucht
Datum vor $heute und nicht gebucht: Uhrzeit durchgestrichen
Datum ab $heute und gebucht: Uhrzeit ohne Link, mit Text gebucht
Datum ab $heute und nicht gebucht: Uhrzeit als Link
Mehrere Termine pro Kalendertag mit GROUP_CONCAT zusammengefasst.
Jetzt hab ich mal nur eine SQL-Abfrage: Datum ab $heute und egal ob gebucht oder nicht.
Formatierung via Abfrage und replace-Funktion in PHP.
(Auf Datum vor $heute hab ich mal verzichtet.)
Kann man da nochmals eine GROUP_CONCAT über beide Abfragen machen?
Das kann ich jetzt nicht mit Bestimmtheit sagen, aber wenn, dann muss die unionisierte Abfrage als Subselect in einer FROM-Klausel landen, woraufhin du dann wieder GROUP BY etc. anwenden kannst. Ob MySQL sowas zulässt, musst du mal dem Handbuch entnehmen oder probieren.
Allgemein scheint mir das aber nicht der richtige Weg zu sein. Du hast es jetzt schon komplizierter als nötig (gemäß meinem Bauchgefühl beim groben Überfliegen des Problems). Eine Gruppierung ohne abenteuerliche GROUP_CONCATs bekommt man auch im abfragenden Programm hin. Recherche-Stichwort: Gruppenwechsel.
@Gruppenwechsel: http://www.php.de/wiki-php/index.php/Gruppenbruch_(Standardverfahren)
Da blick ich noch nicht so recht durch ... zumindest nicht, wie ich das für mein Problem nutzen könnte.
Trotzdem Danke!
Christian.