PostgreSQL 批量调用函数的方法
背景
PostgreSQL批量插入的方法很多,例如insert into tbl values (),(),()…..;
这种方法不能使用绑定变量。
或者
begin;
insert into ...
insert into ....
end;
或者
insert into tbl select ....;
类似的,批量调用函数,也可以这么来搞。
例如
select func(par) from (values (),(),()) as t(par);
postgres=# select int4smaller(c1,c2) from (values (1,2),(2,3),(99,100)) as t(c1,c2);
int4smaller
-------------
1
2
99
(3 rows)
postgres=# select abs(i) from generate_series(-10,0,1) t(i);
abs
-----
10
9
8
7
6
5
4
3
2
1
0
(11 rows)