sql >> Database >  >> RDS >> PostgreSQL

PostgreSQL array_agg(INTEGER[])

Voortbordurend op de discussie in opmerkingen, is mijn persoonlijke suggestie om aggregaat te maken.

CREATE AGGREGATE array_concat_agg(anyarray) (
  SFUNC = array_cat,
  STYPE = anyarray
);

Dan kun je dit doen:

SELECT column1
  FROM (VALUES (array[1,2,3]), (array[3,4]), (array[53,43,33,22])) arr;
    column1
---------------
 {1,2,3}
 {3,4}
 {53,43,33,22}
(3 rows)

SELECT array_concat_agg(column1)
  FROM (VALUES (array[1,2,3]), (array[3,4]), (array[53,43,33,22])) arr;
    array_concat_agg
-------------------------
 {1,2,3,3,4,53,43,33,22}
(1 row)



  1. python-object opslaan in postgres-tabel met augurk

  2. VARCHAR vs TEXT-prestaties wanneer gegevens op rij passen

  3. MySQL ABS() Functie – Retourneert de absolute waarde van een getal

  4. Hoe trage query-logboeken in AWS RDS MySQL in te schakelen