Para preservar a mesma dimensão do seu array, você não pode usar diretamente
array_agg() , então primeiro unnest seus arrays e aplique distinct para remover duplicatas (1). Na consulta externa este é o momento de agregar. Para preservar a ordenação de valores, inclua order by dentro da função agregada: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) Se você não precisar de remoção duplicada, apenas remova
distinct palavra.