oracle自定义函数的使用

数据库 Oracle
使用oracle自定义函数可以返回表类型,下文对oracle自定义函数的用法作了详尽的说明,如果您在这方面遇到过问题,不妨一看。

oracle自定义函数是最重要的函数之一,下面就为您介绍oracle自定义函数的使用,实现返回表类型,希望对您能够有所帮助。

oracle中的函数可以返回表类型。但是,这个表类型实际上是集合类型(与数组类似)这个类型不能直接作为 from 的宾语。
 
从oracle 9i 开始,提供了一个叫做“管道化表函数”的概念,来解决这个问题。
这种类型的函数,必须返回一个集合类型,且标明 pipelined。
这个函数不能返回具体变量,必须以一个空 return 返回。
这个函数中,通过 pipe row () 语句来送出要返回的表中的每一行。
 
调用这个函数的时候,通过 table() 关键字把管道流仿真为一个数据集
以下是一个十分简单的实例:

  1. create table tb1(k number, v varchar2(10));  
  2.  
  3. insert into tb1(k, v) values(100,'aaa');  
  4. insert into tb1(k, v) values(200,'bbb');  
  5. insert into tb1(k, v) values(200,'ccc');  
  6.  
  7. select * from tb1;  
  8.  
  9. create type row_type1 as object(k number, v varchar2(10));  
  10.  
  11. create type table_type1 as table of row_type1;  
  12.  
  13. create or replace function fun1 return table_type1 pipelined as  
  14. v row_type1;  
  15. begin  
  16. for myrow in (select k, v from tb1) loop  
  17.   v :row_type1(myrow.k, myrow.v);  
  18.   pipe row (v);  
  19. end loop;  
  20. return;  
  21. end;  
  22.  
  23. select * from table(fun1);  


 

 

 

【编辑推荐】

Oracle TRIM函数语法介绍

Oracle日期函数简介

oracle trunc()函数的用法

创建Oracle包的语法

Oracle to_char函数的使用

责任编辑:段燃 来源: 互联网
相关推荐

2018-03-16 08:41:16

Oracle存储函数

2011-05-17 13:32:04

oracle

2010-04-28 12:33:36

Oracle自定义函数

2021-07-15 16:41:21

Swift查询函数

2010-09-14 16:47:23

SQL自定义函数

2010-05-11 13:16:21

Unix awk

2010-09-14 16:59:39

SQL自定义函数

2023-06-28 08:05:46

场景vue3自定义

2023-10-31 09:10:39

2009-06-23 11:35:44

JSF的Naviati

2019-12-25 11:47:27

LinuxFVWM

2022-01-14 09:17:13

PythonAPISIX插件

2017-03-16 14:37:05

LinuxShell函数

2015-03-26 11:51:22

2021-12-24 15:46:23

鸿蒙HarmonyOS应用

2015-06-10 10:54:24

自定义路PHP

2010-09-06 15:41:34

SQL函数存储过程

2015-02-12 15:33:43

微信SDK

2009-08-12 14:53:50

C#类型转换函数

2022-09-13 15:44:52

VSLook插件
点赞
收藏

51CTO技术栈公众号