Я хочу использовать динамические имена столбцов в своем запросе, поэтому я использую execute format
.Но мой запрос не работает.Это мой запрос ...
create or replace function container_type() returns table (contType text) as
$func$
declare
containerType text[] := '{d20, r20, h20, rh20, e20, d40, r40, h40, rhc, e40, 45, tank, tk40, tk45, e45, r45, rh45, h45}';
column01 text;
column02 text;
begin
FOR i IN 1 .. array_upper(containerType, 1)
loop
column01 = upper(containerType[i]);
column02 = concat('"booking_', containerType[i], '"');
execute
format(
'insert into tmp_booking_containers (
booking_data_source,
booking_place_of_creation,
booking_prefix,
booking_number,
booking_prefix_number,
booking_container_type,
booking_container_quantity
) select
booking_data_source,
booking_place_of_creation,
booking_prefix,
booking_number,
booking_prefix_number,
$1,
$2
from dim_booking_masters
where $2 != 0'
) using column01, column02;
end loop;
end
$func$ LANGUAGE plpgsql STABLE;
Это ошибка, отображаемая при запуске моей функции:
![enter image description here](https://i.stack.imgur.com/ME1CL.png)