PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak mogę połączyć wiele wierszy w jedną kolumnę za pomocą PostgreSQL?

Od wersji 9 PostgreSQL odbywa się to po prostu za pomocą string_agg :

SELECT
  cmsdocument.internaldocid,
  cmsdocument.documentid,
  cmsdocument.versionid,
  cmsdocversion.title,
  string_agg(cmstag.tagname, ',')
FROM 
  public.cmsobjecttag,
  public.cmstag,
  public.cmsdocument,
  public.cmsdocversion,
  public.cmsuser
WHERE 
  cmsobjecttag.tagid = cmstag.tagid AND
  cmsobjecttag.objectid = cmsdocument.internaldocid AND
  cmsdocument.internaldocid = cmsdocversion.internaldocid AND
  cmsdocument.userid = cmsuser.userid AND
  cmsdocversion.state = 'published' AND
  cmsobjecttag.objecttype = '102'
GROUP BY 
  cmsdocument.internaldocid,
  cmsdocument.documentid,
  cmsdocument.versionid,
  cmsdocversion.title



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Indeks obejmujący wiele tabel w PostgreSQL

  2. Problemy z użyciem pg_search z asocjacją polimorficzną

  3. Importowanie plików shape w postgresql w linuksie za pomocą pgadmin 4

  4. Jak zaimportować dane z CSV do tabeli Postgres za pomocą pgAdmin 3?

  5. Czy można wykryć naruszenie klucza obcego w postgresie?