博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PL/pgSQL学习笔记之六
阅读量:5889 次
发布时间:2019-06-19

本文共 976 字,大约阅读时间需要 3 分钟。

39.3.1. 声明函数参数

传递给函数的参数被用 $1、$2等依次类推的标志符命名。作为可选项,为了提高可读性,可以为$n 参数名称定义别名。此后,既可以用数字标志符也可以用别名来指代参数值。

有两种方式来创建别名。推荐使用的方法是在CREATE FUNCTION命令你个中给参数一个名字,例如:

CREATE FUNCTION sales_tax(subtotal real) RETURNS real AS $$BEGIN    RETURN subtotal * 0.06;END;$$ LANGUAGE plpgsql;

另外一种方法,在PostgreSQL8.0之前,是唯一的方法,它显式声明一个别名。采用如下的声明语法:

name ALIAS FOR $n;

上述例子采用这种方式后变为:

CREATE FUNCTION sales_tax(real) RETURNS real AS $$DECLARE    subtotal ALIAS FOR $1;BEGIN    RETURN subtotal * 0.06;END;$$ LANGUAGE plpgsql;

请注意: 上述两个例子并不是完全相同。在第一个例子中, subtotal 可以通过 sales_tax.subtotal 来参照。但是在第二个例子中不能如此。 (如果在内部块中给一个标签,倒是可以用 标签.subtotal方式来指定它)

更多的例子:

CREATE FUNCTION instr(varchar, integer) RETURNS integer AS $$DECLARE    v_string ALIAS FOR $1;    index ALIAS FOR $2;BEGIN    -- some computations using v_string and index hereEND;$$ LANGUAGE plpgsql;CREATE FUNCTION concat_selected_fields(in_t sometablename) RETURNS text AS $$BEGIN    RETURN in_t.f1 || in_t.f3 || in_t.f5 || in_t.f7;END;$$ LANGUAGE plpgsql;

 

转载地址:http://cprix.baihongyu.com/

你可能感兴趣的文章
Python基本图形绘制
查看>>
捷径 - The certain shortcut
查看>>
windows与windows之间传输文件
查看>>
拓展+属性
查看>>
struts2 常量
查看>>
端口的作用
查看>>
VS XCOPY
查看>>
完整的删除
查看>>
红帽(Red Hat Linux)下SVN服务器的安装与配置
查看>>
RecyclerView使用介绍
查看>>
Java里面使用Date.compareTo比较时间
查看>>
dnsmasq一次成功的配置
查看>>
std::ios_base::fmtflags orig std::streamsize prec
查看>>
linux GUI程序开发
查看>>
C++ 静态链表基本算法实现
查看>>
工具类
查看>>
vue-webpack 引入echarts 注意事项
查看>>
指针的应用
查看>>
ORACLE 总结
查看>>
实战部署FAST Search Server 2010 for SharePoint (转闪电)
查看>>