PostgreSQL

关注公众号 jb51net

关闭
首页 > 数据库 > PostgreSQL > PostgreSQL自定义函数

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 function_name(args);
DROP FUNCTION IF EXISTS function_name(args);

如果其他对象(如视图或触发器)依赖于该函数,可以使用 CASCADE 选项来级联删除这些依赖对象

DROP FUNCTION function_name(args) CASCADE;

到此这篇关于PostgreSQL自定义函数的使用的文章就介绍到这了,更多相关PostgreSQL自定义函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

您可能感兴趣的文章:
阅读全文