Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

string_agg in Abfrage

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von rjentsch, 1 Februar 2021.

  1. akretschmer

    akretschmer Datenbank-Guru

    nö, Danke.
     
  2. castorp

    castorp Datenbank-Guru

    Wenn's mehr als eine Spalte ist, dann geht das auch, wird halt nur komplizierter

    Code:
        
    select distinct jahr, mm,
           (select string_agg(sprache, ',')
            from (
              select distinct sprache
              from the_table t2
              where t2.jahr = t1.jahr
                and t2.mm = t1.mm) s1) as sprachen,
           (select string_agg(tools, ',')
            from (
              select distinct tools
              from the_table t2
              where t2.jahr = t1.jahr
                and t2.mm = t1.mm) s1) as tools
    from the_table t1
    
    Online Beispiel
     
    rjentsch und Walter gefällt das.
  3. castorp

    castorp Datenbank-Guru

    Das kannst Du übrigens mit einem cast zu varchar(max) umgehen:
    Code:
    select string_agg(cast(col as varchar(max), ',') ...
     
  4. rjentsch

    rjentsch Benutzer

    Super ... das ist die Lösung die funktioniert.
    Vielen Dank dafür
     
  5. rjentsch

    rjentsch Benutzer

    allerdings sit mir die Syntax mit t1 und s1 nicht geläufig.
    Wo finde ich das ein select * from existiernedetabellle t1 s1 macht
    welches Suchstichwort muss ich verwenden
     
  6. castorp

    castorp Datenbank-Guru

    Das nennt sich "Alias" als Stichwort zur Suche "table alias"
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden