murraene: GROUP_CONCAT

Hi,

hab ein kleines MySQL Problemchen.
Ich bin schon tierisch froh, dass ich die Funktion GROUP_CONCAT gefunden habe. Weis irgendjemand ob man auch in dem Feld, auf das GROUP_CONCAT angewandt wurde, suchen kann.

Hier meine Beispiel Query:

SELECT artikelnr,GROUP_CONCAT(platz_id SEPARATOR '  
') as platz_id FROM artikel WHERE platz_id LIKE '%blabla%' GROUP BY artikelnr 

Ich wär echt begeistert!!!

  1. Hat sich erledigt, war ein Fehler in der Query!

  2. Hi!

    Weis irgendjemand ob man auch in dem Feld, auf das GROUP_CONCAT angewandt wurde, suchen kann.

    Ja. Nein, nicht im Ergebnis, nur auf im selben Ausdruck.

    SELECT artikelnr,GROUP_CONCAT(platz_id SEPARATOR '') as platz_id FROM artikel WHERE platz_id LIKE '%blabla%' GROUP BY artikelnr

    Die Reihenfolge der Abarbeitung der Klauseln verhindert ein solches Statement. Zuerst sucht sich das DBMS die bei FROM angegebenen Tabellen, schränkt nun mit WHERE die zu bearbeitenden Datensätze ein. Dann wird die Gruppierung vorgenommen und jetzt erst die SELECT-Ausdrücke berechnet. Der Aliasname ist also zum Zeitpunkt des WHERE noch gar nicht bekannt und der Wert seines Ausdrucks auch noch nicht berechnet. Wenn du das Ergebnis eines Ausdrucks für die WHERE-Einschränkung benötigst, musst du den Ausdruck dort vollständig notieren. Ja, das führt dann zu einer doppelten Notation in der SELECT-Liste.

    Lo!