PostgreSQL 批量调用函数的方法

less than 1 minute read

背景

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)  

Flag Counter

digoal’s 大量PostgreSQL文章入口