不愿意做出改变 ≈ 坐吃等死!!

postgreSQL函数/存储过程编写

上一篇 / 下一篇  2016-12-14 10:46:21 / 个人分类:数据库

因为工作需要用到pgsql,而且需要用到存储过程,所以研究了一下,不完善待补充。


例子如下:
CREATE or replace FUNCTION userAccount(userNo int8) 
returns TABLE(user_no int8,amount NUMERIC(19,2),frozen_amount NUMERIC(19,2)) as $$
-- 新建或者替换已有函数 userAccount, 函数变量 userNo 类型int8,
-- 返回table类型,包含三个字段user_no amount frozen_amount 字段后接字段类型
-- as $$ 照写
BEGIN

return query select ua.user_no,ua.amount,ua.frozen_amount from user_account ua where ua.user_no = userNo;
-- 函数返回 若是返回select语句需要这么写 return query ;
-- 而且select的表名必须重命名加上 as xxx,各个查找字段加上'xxx.' ,比如 ua.user_no;
-- 等于号"="后面接新建函数时定义的参数userNo;
end;
$$ LANGUAGE plpgsql;
-- $$ LANGUAGE plpgsql; 照写 

新建好函数之后执行,如何调用函数呢?

select userAccount(1234)
-- 1234 为 userNo的赋值 
-- 返回结果是数组类型 (1234,10.50,1.00)

欢迎交流,不正确的地方请指正

TAG: pgsql PostgreSQL postgreSQL postgresql sql函数 存储过程

 

评分:0

我来说两句

Open Toolbar