什么是SQL函数?

  • SQL函数包体是一些可执行的SQL语言。同时包含1条以上的查询,但是函数只返回最后一个查询(必须是SELECT)的结果。
  • 除非SQL函数声明为返回void,否则最后一条语句必须是SELECT语句。
  • 在简单情况下,返回最后一条查询结果的第一行。
  • 如果最后一个查询不返回任何行,那么该函数将返回NULL值。
  • 如果需要该函数返回最后一条SELECT语句的所有行,可以将函数的返回值定义为集合,即SETOF sometype。

语法

CREATE OR REPLACE FUNCTION function_name([ [ argmode ] [ argname ] argtype [ { DEFAULT | = } default_expr ] [, ...] ])
[RETURNS rettype]
AS $$
$BODY$;
$$ LANGUAGE SQL;

示例

CREATE OR REPLACE FUNCTION add(a number, b number)
RETURNS NUMERIC
AS $$
SELECT a+b;
$$ LANGUAGE SQL; CREATE OR REPLACE FUNCTION add(number,number)
RETURNS NUMERIC
AS $$
SELECT $1 + $2;
$$ LANGUAGE SQL; CREATE OR REPLACE FUNCTION select1()
RETURNS integer
AS $$
select quantity from pivot_t1;
$$ LANGUAGE SQL;
该查询返回表的第一条记录 CREATE OR REPLACE FUNCTION select2()
RETURNS setof integer
AS $$
select quantity from pivot_t1;
$$ LANGUAGE SQL;
该查询返回表的全部记录

KingbaseES 基于SQL的函数过程的更多相关文章

  1. Atitit 基于sql编程语言的oo面向对象大规模应用解决方案attilax总结

    Atitit 基于sql编程语言的oo面向对象大规模应用解决方案attilax总结 1. Sql语言应该得到更大的范围的应用,1 1.1. 在小型系统项目中,很适合存储过程写业务逻辑2 1.2. 大型 ...

  2. Netsuite Formula > Oracle函数列表速查(PL/SQL单行函数和组函数详解).txt

    PL/SQL单行函数和组函数详解 函数是一种有零个或多个参数并且有一个返回值的程序.在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类: 单行函数 ...

  3. SQL server函数大全

    函数类别 作用 聚合函数 执行的操作是将多个值合并为一个值.例如 COUNT.SUM.MIN 和MAX. 配置函数 是一种标量函数,可返回有关配置设置的信息. 转换函数 将值从一种数据类型转换为另一种 ...

  4. SQL SERVER 函数大全[转]

    SQL Server 函数大全 一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下 ...

  5. 基于SQL的日志分析工具myselect

    基本介绍 程序开发者常常要分析程序日志,包括自己打印的日志及使用的其他软件打印的日志,如php,nginx日志等,linux环境下分析日志有一些内置命令能够使用,如grep,sort,uniq,awk ...

  6. SQL语句函数详解__sql聚合函数

    函数是一种有零个或多个参数并且有一个返回值的程序.在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类:单行函数.组函数 本文将讨论如何使用单行函数及 ...

  7. mysql体系结构和sql查询执行过程简析

    一: mysql体系结构 1)Connectors 不同语言与 SQL 的交互 2)Management Serveices & Utilities 系统管理和控制工具 备份和恢复的安全性,复 ...

  8. Sql server函数的学习2(游标函数、日期函数、字符串操纵函数)

    一.游标函数与变量 游标可以处理多行数据,在过程循环中一次访问一行.和基于集合的高效操作相比,这个功能对系统资源的消耗更大. 可以用一个函数和两个全局变量来管理游标操作 1.CURSOR_STATUS ...

  9. 【转载】SQL SERVER 函数大全

    SQL Server 函数大全 一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下 ...

  10. SQL Server 函数大全

    本文链接:https://blog.csdn.net/qq_15028299/article/details/81330854SQL2008 表达式:是常量.变量.列或函数等与运算符的任意组合.htt ...

随机推荐

  1. OpenCV开发笔记(六十三):红胖子8分钟带你深入了解SIFT特征点(图文并茂+浅显易懂+程序源码)

    若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...

  2. go-ini解析ini文件

    文档 https://github.com/go-ini/ini https://ini.unknwon.io/docs/intro/getting_started go get -u gopkg.i ...

  3. 【LeetCode栈与队列#02】有效括号

    有效括号 力扣题目链接(opens new window) 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右 ...

  4. ABP模块的测试项目从默认的Microsoft SQL Server替换成MySQL

    1.替换项目引用 2.重新生成解决方案 3.删除Migrations 4.模块的引用 替换成:AbpEntityFrameworkCoreMySQLModule 5.命名空间 替换成:Volo.Abp ...

  5. Spring Cloud Zuul 获取当前请求的路由信息和路由后端的服务节点信息

    基本思路 参考spring-cloud-zuul-ratelimit开源项目,在过滤器中根据当前的请求路径,判断当前的路由信息,当取得路由信息后,可以对服务的调用次数做统计等操作. 具体实现 创建一个 ...

  6. 【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本

    当在Azure 中部署Java应用时候,通常会遇见下列的问题: 如何部署一个Java的项目呢? 部署成功后,怎么来查看Tomcat的服务器信息呢? 如果Azure提供的默认Tomcat版本的配置跟应用 ...

  7. 你想要一个简单的 MQ 吗?(最简单的那种)

    FolkMQ 一个简单的消息中间件(全球最简单的那种,要比谁都简单!).追世间简单为何物,可叫我生死相许! 面向简单编程 1) 启动服务 docker run -p 18602:18602 -p 86 ...

  8. JAVA 多线程---面经

    线程与进程 提到进程那就要说程序,程序有指令和数据,程序从磁盘加载到内存,cpu获得指令进行执行,其中还会用到各种资源如网络资源,磁盘等.一个程序从磁盘进入内存,就是进程实例的创建. 一个程序可以有多 ...

  9. 玩转Vue3之Composables

    前言 Composables 称之为可组合项,熟悉 react 的同学喜欢称之为 hooks ,由于可组合项的存在,Vue3 中的组件之间共享状态比以往任何时候都更容易.这种新范例引入了一种更有组织性 ...

  10. $help console 里面的入口帮助文档

    $help console 里面的入口帮助文档 Object.defineProperty(window, '$help', { get: function() { // 这里面this是window ...