Eu abordaria isso com o operador de matriz. select array(select unnest(:arr1) except select unnest(:arr2)); Se :arr1 e :arr2 não se cruzarem, usar array_agg() resultará em null.