История изменений
Исправление Toxo2, (текущая версия) :
Если ли операция или функция убрать из массива элементы другого массива, то есть array[1,2,3] - array[1,4] -> array[2,3]?
Написал для вас:
CREATE OR REPLACE FUNCTION public.array_sub(pa1 anyarray, pa2 anyarray)
RETURNS anyarray
STRICT IMMUTABLE LANGUAGE SQL
AS
$function$
SELECT
array_agg(a1.e)
FROM
UNNEST(pa1) a1(e)
LEFT JOIN UNNEST(pa2) a2(e)
ON a1.e = a2.e
WHERE
a2.e IS NULL
;
$function$
;
Исходная версия Toxo2, :
Если ли операция или функция убрать из массива элементы другого массива, то есть array[1,2,3] - array[1,4] -> array[2,3]?
Написал для вас:
CREATE OR REPLACE FUNCTION public.array_sub(pa1 anyarray, pa2 anyarray)
RETURNS anyarray
STRICT IMMUTABLE LANGUAGE SQL
AS
$function$
SELECT
array_agg(a1.e)
FROM
UNNEST(pa1) a1(e)
LEFT JOIN UNNEST(pa2) a2(e)
ON
a1.e = a2.e
WHERE
a2.e IS NULL
;
$function$
;