PostgreSQL自定义函数的使用
作者:菜逼の世界
本文主要介绍了PostgreSQL自定义函数的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
基本语法
//建一个名字为function_name的自定义函数 create or replace function function_name() returns data_type as //returns 返回一个data_type数据类型的结果;data_type 是返回的字段的类型; $$ //固定写法 ......//方法体 $$ LANGUAGE SQL; //固定写法 ------------------------------- CREATE OR REPLACE FUNCTION function_name(args) RETURNS return_type AS $$ DECLARE -- 变量声明 BEGIN -- 函数体 RETURN result; END; $$ LANGUAGE plpgsql;
创建函数
create or replace function add(integer,integer) returns integer as $$ select $1 + $2; $$ LANGUAGE SQL;
运行结果
调用结果
函数嵌套
CREATE FUNCTION outer_function() RETURNS void AS $$ DECLARE FUNCTION inner_function() RETURNS void AS $$ -- 内部函数代码 $$ LANGUAGE plpgsql; BEGIN -- 外部函数代码 inner_function(); END; $$ LANGUAGE plpgsql;
递归函数
CREATE FUNCTION recursive_function(arg) RETURNS type AS $$ BEGIN IF condition THEN RETURN arg; ELSE RETURN recursive_function(arg + 1); END IF; END; $$ LANGUAGE plpgsql;
删除函数
- 使用
DROP FUNCTION
语句来删除一个或多个函数
DROP FUNCTION function_name(args);
- 如果函数不存在,使用
IF EXISTS
选项不报错
DROP FUNCTION IF EXISTS function_name(args);
- 级联删除
如果其他对象(如视图或触发器)依赖于该函数,可以使用 CASCADE 选项来级联删除这些依赖对象
DROP FUNCTION function_name(args) CASCADE;
到此这篇关于PostgreSQL自定义函数的使用的文章就介绍到这了,更多相关PostgreSQL自定义函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!