У меня есть функция с именем generate_table, которая принимает 2 входных параметра (rundate::date
и branch::varchar
)
Теперь я пытаюсь работать с второй функцией, используя PLPGSQL, которая получит список всех ветвей и самую новую дату для каждой ветки и передаст это как параметр функции generate_table.
Запрос, который у меня есть, следующий:
select max(rundate) as rundate, branch
from t_index_of_imported_files
group by branch
и это приводит к следующему:
rundate;branch
2014-03-13;branch1
2014-03-12;branch2
2014-03-10;branch3
2014-03-13;branch4
и мне нужно, чтобы функция запускала что-то вроде этого
select generate_table('2014-03-13';'branch1');
select generate_table('2014-03-12';'branch2');
select generate_table('2014-03-10';'branch3');
select generate_table('2014-03-13';'branch4');
Я много читал о PLPGSQL, но пока могу только сказать, что я едва знаю основы.
Я прочитал, что можно использовать конкатенацию, чтобы получить все значения вместе, а затем использовать EXECUTE внутри этой функции, но я не смог заставить ее работать правильно.
Любые предложения о том, как это сделать?