sql >> データベース >  >> RDS >> PostgreSQL

Postgresの行を連結する

    GROUP BYを使用する および集約関数 string_agg()

    SELECT nummer
          ,string_agg(vorname, E'\n') AS vorname
          ,string_agg(name, E'\n') AS name
          ,cash
    FROM   mytable
    GROUP  BY nummer, cash
    ORDER  BY nummer, cash;
    

    cashを追加しました GROUP BYへ 元の値に到達し、同じnummerで異なる場合に備えて保護します 。

    あなたのコメントについて:

    SELECT nummer
          ,string_agg(vorname, E'\n') AS vorname
          ,string_agg(name, E'\n') AS name
          ,cash
    FROM  (
       SELECT DISTINCT
              nummer, vorname, name, cash
       FROM   mytable
       ) AS m
    GROUP  BY nummer, cash
    ORDER  BY nummer, cash;
    


    1. MySQL-すべての子テーブルで複数列の主キーを使用する必要がありますか?

    2. Unixタイムスタンプの変換はMysqlとOracleで異なります

    3. IDENTITY列を広げることによる影響の最小化–パート1

    4. phpとmysqlで残り時間を計算する方法は?