Preferisco questa sintassi (circa il 5% più veloce)
create or replace function public.array_unique(arr anyarray)
returns anyarray as $body$
select array( select distinct unnest($1) )
$body$ language 'sql';
utilizzando:
select array_unique(ARRAY['1','2','3','4','4']);