Я пытаюсь сделать обобщенную функцию в pl / pgsql.Я столкнулся с проблемой, которую не могу понять.Смотри в блоке объявления я присвоил значение некоторым параметрам.Я хотел бы знать, как использовать их в качестве компонента запроса.(пример: блок BEGIN / END, groupby_join_field)
CREATE OR REPLACE FUNCTION drillThrough(whereclause anyarray, groupbyclause anyarray) RETURNS void AS $$
DECLARE
where_table varchar(19) := whereclause[1];
where_join_field varchar(19) := whereclause[2];
where_value_field varchar(19) := whereclause[3];
where_value varchar(19) := whereclause[4];
groupby_table varchar(18) := groupbyclause[1];
groupby_join_field varchar(18) := groupbyclause[2];
groupby_value_field varchar(18) := groupbyclause[3];
BEGIN
INSERT INTO test SELECT dim_date.groupby_join_field, 1 FROM dim_date;
END;
$$ LANGUAGE plpgsql;
Любая идея приветствуется,
Редактировать:
В этом случае поле goupby_join_field имеет значение year_id, поэтомуЯ хотел бы, чтобы двигатель понимал dim_date.year_id