背景
在使用数据库过程中,用户可能会封装一些函数,用来返回一些映射值。
例如,有一张表存储了学号和学生名字,写一个函数,根据学号,返回学生名字。
SQL如下 :
create table tab(id int primary key, std_name name);
create or replace function f1(int) returns name as
$$
select std_name from tab where id=$1;
$$
language sql strict volatile;
dwh=> insert into tab values (1,'abc');
INSERT 0 1
dwh=> select f1(1);
f1
-----
abc
(1 row)
使