Wenn meine Frage etwas unklar ist, hier ist das, was ich meine, wir können eine Spalte mehrere Zeilen aggregieren array_agg
verwenden, zum Beispiel ich diese TabelleWie aggregiert mehr als eine Spalte aus vielen Zeilen in einem in PostgreSQL?
foo | bar | baz
-------+-------+-------
1 | 10 | 20
1 | 12 | 23
1 | 15 | 26
1 | 16 | 21
haben Wenn ich diese Abfrage aufrufen:
select
foo,
array_agg(bar) as bars
from table
group by (foo)
ergibt:
foo | bars
-------+----------------
1 | {10,12,15,16}
Was die Abfrage wäre, diese Tabelle zu haben (mit bar, baz)?
foo | barbazs
-------+------------------------------------
1 | {{10,20},{12,23},{15,26},{16,21}}
Ich habe in functions-aggregate (postgresql.org) aber es scheint nicht alle Funktionen werden diese Wirkung haben oder ich etwas fehle?
Was passiert mit 'array_agg (array [bar, baz]) ''? – melpomene
@melpomene es passiert, dass es funktioniert. danke – user544262772