Untuk mempertahankan dimensi yang sama dari array Anda, Anda tidak dapat langsung menggunakan array_agg()
, jadi pertama-tama kita unnest
array Anda dan terapkan distinct
untuk menghapus duplikat (1). Dalam kueri luar, inilah saatnya untuk mengumpulkan. Untuk mempertahankan nilai pemesanan, sertakan order by
dalam fungsi agregat:
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) Jika Anda tidak memerlukan penghapusan duplikat, hapus saja distinct
kata.