首页 > 数据库 >PL/SQL表---table()函数用法

PL/SQL表---table()函数用法

时间:2023-07-02 13:06:47浏览次数:44  
标签:end create replace --- SQL test table select


 

PL/SQL表---table()函数用法:
利用table()函数,我们可以将PL/SQL返回的结果集代替table。

simple example:

 1、table()结合数组:

 */

 create or replace type t_test as object(
 id integer,
 rq date,
 mc varchar2(60)
 );

 create or replace type t_test_table as table of t_test;

 create or replace function f_test_array(n in number default null) return t_test_table
 as 
 v_test t_test_table := t_test_table();
 begin
         for i in 1 .. nvl(n,100) loop
                 v_test.extend();
                 v_test(v_test.count) := t_test(i,sysdate,'mc'||i);
         end loop;
         return v_test;
 end f_test_array;
 /

 select * from table(f_test_array(10));

 /*

 2、table()结合PIPELINED函数:

 */

 create or replace function f_test_pipe(n in number default null) return t_test_table PIPELINED 
 as 
 v_test t_test_table := t_test_table();
 begin 
         for i in 1 .. nvl(n,100) loop
                 pipe row(t_test(i,sysdate,'mc'||i)); 
         end loop; 
 return; 
 end f_test_pipe; 
 /

 select * from table(f_test_pipe(20));

 /*

 3、table()结合系统包:

 */

 create table test (id varchar2(20));
 insert into test values('1');
 commit;
 explain plan for select * from test;
 select * from table(dbms_xplan.display);


 


标签:end,create,replace,---,SQL,test,table,select
From: https://blog.51cto.com/u_16174476/6604441

相关文章

  • 在spring 的jdbc sql中使用in 语句
    1.<propertyname="sqlSelectPricesForHoldAssetByDate"><value>selectA.ASSETPRICEID,A.ASSETID,A.SOURCE,A.ASOFDATE,A.CURRENCY,A.BID,A.ASKfromassetpriceAINNERJOINloanfacilitylfONA.assetid=lf.assetidwh......
  • SqlDataAdapter
    publicclassDbOperation{privatestaticstringconnectionString=ConfigurationManager.AppSettings["Connection"];privatestaticSqlDataAdaptermyAdapter=newSqlDataAdapter();///<summary>///Initializ......
  • MCU嵌入式开发-硬件和开发语言选择
    引入RTOS的考虑因素主要考虑以下方面来决定是否需要RTOS支持:需要实现高响应时的多任务处理能力需要实现实时性能要求高的任务需要完成多个复杂的并发任务NanoFramework具备满足工控系统实时性要求的各项功能特性。通过它提供的硬件库、线程支持、中断支持等,可以完全控......
  • 用Wpf做一个Block编程画板(续5-Diagram画板,仿Scratch)
    用Wpf做一个Block编程画板(续5-Diagram画板)先上一张效果动图,本次更新主要仿照Scratch,目前仅完成拖拽部分,逻辑部分后续完善。同样老规矩,先上源码地址:https://gitee.com/akwkevin/aistudio.-wpf.-diagram本次扩展主要内容:1.Block模块,入口在文件新建下。2.简易Block的使用:......
  • Python - 编写Unicode 字符串
    Python的字符串字面量支持"\xNN"十六进制字节值转义以及"\uNNNN"和"\UNNNNNNNN"Unicode转义。第一种形式用4位十六进制数编码2字节(16位)位字符码点第二种形式用8位十六进制数编码4字节(32位)码点。十六进制值0xCD和0xE8,是ASCII的7位字符范围之外的两个特殊的声调字符......
  • AI - stable-diffusion(AI绘画)的搭建与使用
    最近AI火的一塌糊涂,除了ChatGPT以外,AI绘画领域也有很大的进步,以下几张图片都是AI绘制的,你能看出来么? 一、环境搭建上面的效果图其实是使用了开源的AI绘画项目 stable-diffusion 绘制的,这是它的官方仓库:https://github.com/CompVis/stable-diffusion但是这个官方......
  • React - 14 Hooks组件之useRef
    1.获取元素的3种方式方式1:ref={x=>refName=x}函数组件中没有this,直接给了一个变量。(可以用但是不推荐)方式2React.createRef()方式3useRef(null)2.函数组件用useRef,类组件用React.createRefimportReact,{useState,useEffect,useRef}from"react";import{Butto......
  • Prometheus-2:blackbox_exporter黑盒监控
    黑盒监控blackbox_exporter前边介绍有很多exporter可以直接将metrics暴露给Prometheus进行监控,这些称为“白盒监控”,那些exporter无法监控到的指标呢?或者未暴露Metrics给Prometheus的一些服务怎么办?这时就要用到blackbox_exporte“黑盒监控”。blackbox_exporte支持用户通过:HT......
  • 基于Sa-Token实现微服务之前的单点登录
    修改配置文件,准备好四个域名127.0.0.1auth.server.com127.0.0.1user.server.com127.0.0.1third.server.com127.0.0.1eureka.server.com注册中心:eureka-server服务pom依赖<dependency><groupId>org.springframework.cloud</groupId>......
  • Maven 入门实战(2)--POM
    POM(ProjectObjectModel,项目对象模型)是Maven工程的基本工作单元,它是一个XML文件,包含了项目的基本信息,用于描述项目如何构建,声明项目依赖等等。执行任务或目标时,Maven会在当前目录中查找并读取POM,获取所需的配置信息,然后执行目标。1、基本配置<projectxmlns="http:......