PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Nối các hàng trong Postgres

Sử dụng GROUP BY và chức năng tổng hợp 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;

Tôi đã thêm cash vào GROUP BY để đạt được giá trị ban đầu và bảo vệ khỏi trường hợp nó sẽ khác với cùng một nummer .

Theo nhận xét của bạn:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để thay đổi mật khẩu người dùng PostgreSQL?

  2. Các khóa ngoại giới thiệu các khóa ngoại khác trong PostgreSQL

  3. Sự khác biệt giữa ngôn ngữ sql và ngôn ngữ plpgsql trong các hàm PostgreSQL

  4. Erlang và PostgreSQL

  5. Thiết lập và bảo trì bản sao PostgreSQL bằng Ansible