一、table()与返回值为数组类型的普通函数一起使用:
--创建类型 CREATE OR REPLACE TYPE T_MYTEST AS OBJECT( ID NUMBER, TIME DATE, NAME VARCHAR2(60) ); / --创建T_MYTEST类型的数组 T_MYTEST_TABLE CREATE OR REPLACE TYPE T_MYTEST_TABLE AS TABLE OF T_MYTEST; / --创建普通函数,返回数组类型,用数组的实例存放结果集 CREATE OR REPLACE FUNCTION F_TEST_ARRAY(N IN NUMBER DEFAULT NULL) RETURN T_MYTEST_TABLE AS T_ARRAY T_MYTEST_TABLE:=T_MYTEST_TABLE(); BETIG FOR I IN 1..NVL(N,100) LOOP T_ARRAY.EXTEND(); T_ARRAY(T_ARRAY.COUNT):=T_TEST(I,SYSDATE,''||I); END LOOP; RETURN T_ARRAY; END; / --测试sql select * from table(F_TEST_ARRAY(10));
二、用返回类型为数组的管道函数,这里没有用到存放中间结果的变量,每处理完一条记录立刻返回
create or replace function f_test_pipe(n number defaule null) return t_mytest_table pipelined as begin for i in 1..nvl(n,100) loop pipe row(t_test(i,sysdate,i||'')); end loop; return; end; /
三、table调用包中返回类型为数组类型的函数 dbms_xplan.display是返回类型为数组的管道函数
create table test(id number,name varchar2(30)); insert into test value(1,'a'); explain plan for select * from test; select * from table(dbms_xplan.displan);
相关推荐
### Oracle管道函数详解 #### 一、概述 Oracle管道函数是一种特殊类型的函数,它能够返回一个数据集合,并且能够在函数执行的过程中逐步返回结果,而不仅仅是最后的结果。这种特性使得管道函数非常适合于处理大量...
### Oracle函数详解 #### 1. ASCII - **功能**:返回指定字符的ASCII值。 - **语法**:ASCII(char) - **示例**: ```sql SQL> SELECT ASCII('A') AS "ASCII Value" FROM DUAL; ASCII Value ----------- 65 ``...
在Oracle数据库中,掌握各种函数的使用方法对于进行数据处理和分析至关重要。以下是从给定的部分内容中提取并详细解释的几个重要函数。 #### 1. ASCII 该函数用于返回与指定字符相对应的十进制数字值。 ```sql SQL>...
### Oracle权限函数详解 在Oracle数据库管理中,权限管理是一项重要的任务,它涉及到对用户、角色及对象等数据库实体的访问控制。通过合理地分配权限,可以有效地保护数据的安全性和完整性,同时确保业务流程的正常...
本文将详细介绍67个常用的Oracle函数,并通过具体的例子帮助读者更好地理解和运用这些函数。 #### 二、单记录函数详解 1. **ASCII** - **功能**: 返回与指定字符对应的ASCII十进制数值。 - **语法**: ASCII...
### Oracle函数调用存储过程详解 #### 背景与目的 在开发Oracle应用程序时,经常需要使用到存储过程和函数。这两种类型的数据库对象各有优势,可以满足不同的业务需求。有时候,为了更好地组织代码和提高复用性,...
### Oracle Split 函数详解 #### 一、Oracle Split 函数简介 在Oracle数据库中,并没有内置的split函数来处理字符串的分割操作。然而,在实际应用中,经常需要将一个包含多个值的字符串按照指定的分隔符进行拆分,...
### Oracle函数用法详解 #### ASCII ASCII函数返回一个字符的ASCII码值。 ``` SQL> select ascii('A') A, ascii('a') a, ascii('0') zero, ascii(' ') space from dual; ``` #### CHR CHR函数返回指定ASCII码值的...
不过,DDL(数据定义语言)如CREATE TABLE等需要以动态SQL的方式在PL/SQL中使用。 总的来说,Oracle PL/SQL编程详解深入讲解了PL/SQL的各个方面,从基础到高级,帮助开发者掌握在Oracle环境中进行高效、稳定和可靠...
本文将详细介绍Oracle存储过程与函数的创建、使用方法以及常见操作。 #### 二、创建存储过程 存储过程是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。存储过程的优点包括提高性能、减少网络流量、...
一、Oracle函数详解 1. **SELECT INTO**:这个SQL语句用于从查询结果中将一行数据赋值给变量。例如,`SELECT column INTO variable FROM table WHERE condition;` 这种方式在处理单行记录时非常实用。 2. ** NVL**...
### Oracle学习之函数与存储过程详解 #### 一、函数的定义及应用 函数在Oracle中主要用于执行特定的计算或逻辑处理,并返回一个结果。它们是数据库编程中的重要组成部分,可以提高代码的重用性和可维护性。 #####...
### Oracle 函数详解 #### 1. ASCII - **功能**:此函数返回与指定字符相对应的十进制数值。 - **语法**:ASCII(char) - **示例**: ```sql SELECT ASCII('A') AS A, ASCII('a') AS a, ASCII('0') AS zero, ASCII...
### Oracle常用函数集详解 #### 一、ASCII函数 **功能描述:** ASCII函数用于返回与指定字符相对应的十进制数值。 **语法格式:** ```sql ASCII('字符') ``` **示例:** ```sql SELECT ASCII('A') A, ASCII('a') ...
### Oracle公共函数详解 #### 一、ASCII函数 **功能:** 返回与指定字符相对应的十进制数值。 **语法格式:** ```sql ASCII(char) ``` **示例:** ```sql SELECT ASCII('A') AS "A", ASCII('a') AS "a", ASCII('0')...
Oracle函数大致可以分为以下几类: - **字符串函数**:用于处理字符串数据。 - **数值函数**:用于处理数值数据。 - **日期函数**:用于处理日期和时间数据。 - **转换函数**:用于在不同数据类型之间进行转换。 - ...
### Oracle PL/SQL 编程详解 #### 一、PL/SQL 概述 ##### 1.1 什么是 PL/SQL? PL/SQL(Procedure Language for SQL)是Oracle数据库的一种专用编程语言,它将SQL语句与过程化的编程语言特性相结合,提供了强大的...
### Oracle函数大全详解 #### 一、ASCII函数 **功能:** 返回与指定字符相对应的十进制数值。 **语法格式:** ```sql ASCII(char) ``` **示例:** ```sql SELECT ASCII('A') AS "A", ASCII('a') AS "a", ASCII('0')...