У меня есть массив строк, и мне нужно l oop через массив; при зацикливании каждой строки мне нужно l oop увеличить идентификатор этой строки в таблице и создать массив INT этих идентификаторов.
Фактически мне нужно go FROM:
{"a", "b", "c"}
TO:
{3,6,8}
Я получаю l oop без ошибок, и я получаю правильный идентификатор для каждой строки в исходном массиве, но у меня есть пустой массив объявляется, что, кажется, не заполняется ... Это код
FOREACH v_single_exisisting_user_code IN ARRAY a_existing_user_group_codes
LOOP
RAISE NOTICE 'one group code: %', (SELECT privilege_group_id
FROM privilege_group
WHERE privilege_group_code = v_single_exisisting_user_code);
PERFORM CONCAT(a_groups_to_int_array, (SELECT privilege_group_id FROM privilege_group WHERE privilege_group_code = v_single_exisisting_user_code));
RAISE NOTICE 'a_groups_to_int_array : %', a_groups_to_int_array;
END LOOP;
Первый уведомитель о повышении дает мне правильный привилегированный_с_группой, но второе уведомление о повышении по-прежнему возвращает пустой массив ... так что concat не происходит. Я пробовал ARRAY_APPEND () с одинаковыми результатами, всегда пустой массив.
Есть мысли о том, что я делаю не так?