Chcete-li zachovat stejný rozměr pole, nemůžete přímo použít array_agg()
, takže nejprve unnest
vaše pole a použijte distinct
k odstranění duplikátů (1). Ve vnějším dotazu je to čas na agregaci. Chcete-li zachovat řazení hodnot, zahrňte order by
v rámci agregační funkce:
select time, array_agg(col order by col) as col
from (
select distinct time, unnest(col) as col
from yourtable
) t
group by time
order by time
(1) Pokud nepotřebujete odstranění duplicit, stačí odstranit distinct
slovo.