nilsfad: mehrere Text-Datensätze in eine Zeile zusammenfassen

Hallo

weis vielleicht jemand, ob und wie man es mit SQL anstellen kann, die Daten mehrerer Zeilen, die jeweils ein Text-Feld enthalten, in einer einzigen Zeile zusammenfassen kann?

Ich dachte da an so eine Gruppenfunktion wie SUM, nur dass halt keine Zahlen aufsummiert sondern Strings mit Kommate getrennt aneinandergereiht werden sollen.

Geht sowas?

  1. Moin!

    Spalten und / oder Texte können mit || verknüpft werden.

    select foo || ', ' || bar from blubs

    Dies würde z.B. in Oracle eine Spalte ausgeben, welche die Inhalte der Spalten foo und bar getrennt durch Komma und Leerzeichen beinhaltet.

    Grüße

    Stefan

    1. Mein Access sagt mir

      "Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
      [Microsoft][ODBC Microsoft Access Driver] Ungültige Verwendung von senkrechten Strichen in Abfrageausdruck" :>

      Ich möchte auch nicht die Werte einer Zeile (also horizontal), sondern MEHRER Zeilen (vertikal) gruppieren.

      Moin!

      Spalten und / oder Texte können mit || verknüpft werden.

      select foo || ', ' || bar from blubs

      Dies würde z.B. in Oracle eine Spalte ausgeben, welche die Inhalte der Spalten foo und bar getrennt durch Komma und Leerzeichen beinhaltet.

      Grüße

      Stefan

  2. echo $begrüßung;

    weis vielleicht jemand, ob und wie man es mit SQL anstellen kann, die Daten mehrerer Zeilen, die jeweils ein Text-Feld enthalten, in einer einzigen Zeile zusammenfassen kann?

    Das kommt auf den Funktonsumfang des von dir verwendeten DBMS an. MySQL beispielsweise kennt GROUP_CONCAT(). Weitere mögliche Lösungen hängen von der verwendeten Software ab.

    Solltest du weitere Nachfragen haben, gib bitte das verwendete System inklusive Version an.

    echo "$verabschiedung $name";

    1. echo $begrüßung;

      Solltest du weitere Nachfragen haben, gib bitte das verwendete System inklusive Version an.

      Mein Versäumnis, ich arbeite mit Access 2000. Glaube kaum, dass es DA "sowas" gibt?

      echo "$verabschiedung $name";