Announcement

Collapse
No announcement yet.

Gruppierung mit Konkatenieren

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Gruppierung mit Konkatenieren

    Hallo,

    Ich würde gerne eine Gruppierung durchführen, wobei der Inhalt einer Kolonne Kolonne nicht summiert werden soll, sondern konkateniert. Bsp.

    Code:
    CREATE TABLE testgroup  (
            lang CHAR(1),
            dial  CHAR(1),
            bev INTEGER
    );
    
    INSERT INTO testgroup (lang,dial,bev)
    VALUES
    ("D","a",1), 
    ("D","b",2),
    ("F","a",2),
    ("F","c",1),
    ("F","c",4),
    ("I","a",5);
    
    SELECT lang, CONCAT(dial),SUM(bev)
    FROM testgroup
    GROUP BY lang
    Als Resultat sollte erscheinen:
    1. D ab 3
    2. F acc 7
    3. I a 5

    Hier sind alle Inhalte der Variable dial innerhalb einer Gruppierung konkateniert.

    Wie lautet der Code, wenn ich folgendes erhalten möchte?
    1. D a-b 3
    2. F a-c 7
    3. I a 5

    Der Wert der Variable dial innerhalb einer Gruppierung (hier z.B. F) darf nur einmal vorkommen (a-c und nicht a-c-c) und die Werte sollen mit einem Bindestrich getrennt werden.

    In meinem Versuch gibt das Konkatenieren nur den ersten Wert der Variable dial aus.

    Besten Dank für Hilfe.
    giordano

  • #2
    Hallo,

    Originally posted by giordano View Post
    ...In meinem Versuch gibt das Konkatenieren nur den ersten Wert der Variable dial aus.
    Da dieses Select überhaupt funktioniert, vermute ich mal MySQL als DBMS. Wenn dem so ist, dann suchst du wohl eher GROUP_CONCAT

    Gruß Falk
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment


    • #3
      That's it! Besten Dank.
      giordano

      Comment

      Working...
      X