oracle 集合 nested_table

原创 2015年07月10日 00:56:03
1、--创建嵌套表类型
      Create Or Replace Type nested_table_type_name Is Table Of element_type;
      --创建嵌套表对象
      nested_table_variabe_name nested_table_type_name;

 注:使用嵌套表对象元素之前必须先初始化。下标从1开始,元素个数没限制

实例:

Create Or Replace Type test_type Is Table Of Varchar2(100)
 
Create Table tmp
(
  Id Number,
  phone  test_type,
  email  test_type
 )
  Nested Table phone Store As phone_table,
  Nested Table email Store As email_table


Insert Into tmp Values(1,test_type('13400000001','13400000002','13400000003'),test_type('a@126.com','b@126.com'));
Insert Into tmp Values(2,test_type('13500000001','13500000002','13500000003'),test_type('a@163.com','b@163.com'));
Insert Into tmp(Id) Values(3);
Update tmp Set phone=test_type('13600000001','13600000002') Where Id=3;
 
Declare
  test_rd test_type;
  i Number;
Begin
  Select phone Into test_rd From tmp Where Id=1;
  For i In 1 .. test_rd.count 
    Loop
      dbms_output.put_line(test_rd(i));
    End Loop;
End;  
输出:
13400000001
13400000002

13400000003


Declare
  test_rd test_type;
Begin 
  test_rd:=test_type('','','');
  test_rd(1):='1';
  test_rd(3):='2';
  dbms_output.put_line('元素个数:'||test_rd.count);
  dbms_output.put_line('元素1:'||test_rd(1));
  dbms_output.put_line('元素2:'||test_rd(2));
  dbms_output.put_line('元素3:'||test_rd(3));
End;
输出:
元素个数:3
元素1:1
元素2:
元素3:2







版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

Oracle 方法返回集合类型[table]

select  *  from table(fn_test2('7698'));的含义: 1. Does oracle support calling a procedureas a derived...

oracle常用的复合数据类型 : BULK COLLECT(成批聚合类型)和数组集合type类型is table of 表%rowtype index by binary_integer

例1:批量 查询部门号为"10" 号的并把它们打印出来.DECLARE   TYPE emp_table_type IS TABLE OF my_emp%ROWTYPE ...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

【Oracle-PLsql】使用存储过程,利用table集合类型开发复杂业务报表

在一般的项目中,都需要开发一些报表,少则几个字段,多则几十个字段,需要关联的表可能多达十几、几十张表,如果想要使用一个SQL语句将这几十张表关联起来 查询所需要的字段,当你听到这里的时候,你的脑子可能...

oracle 表连接 - nested loop 嵌套循环连接

一. nested loop 原理 nested loop 连接(循环嵌套连接)指的是两个表连接时, 通过两层嵌套循环来进行依次的匹配, 最后得到返回结果集的表连接方法.  假如下面的 sql...

oracle sql调优学习笔记(三)表的连接方式:NESTED LOOP、HASH JOIN、SORT MERGE JOIN

表连接方式及使用场合 NESTED LOOP     对于被连接的数据子集较小的情况,nested loop连接是个较好的选择。nested loop就是扫描一个表,每读到一条记录,就根据...

Oracle优化器、优化模式、表的连接方式(Hash Join、Nested Loop、Sort Merge Join)

查询优化器Oracle的查询优化器(QO)分为两种: 1. RBO:Ruled-Based Optimization, 基于规则的优化器; 2. CBO :Cost-Based Op...
  • wwlhz
  • wwlhz
  • 2017-06-30 14:32
  • 121

oracle执行计划-Nested Loops (nl)-1

嵌套循环(Nested  Loops (NL))       假如有A、B两张表进行嵌套循环连接,那么Oracle会首先从A表中提取一条记录,然后去B表中查找相应的匹配记录,如果有的话,就把该条记录...

oracle表连接----->嵌套循环(Nested Loops Join)

嵌套循环连接(Nested Loops Join)是一种两个表在做表连接时依靠两层嵌套循环(分别为外层循环和内存循环)来得到连接结果集的表连接方法。即外层循环对应的驱动结果集有多少条记录,遍历被驱动表...

oracle执行计划-Nested Loops (nl)-2

这篇文件继续和大家讨论oracle执行计划-Nested Loops (nl),上一篇的实验我一直在用hints来限制这个驱动表,下面的实验我就来试试T2表做驱动表                  ...

oracle执行计划-Nested Loops (nl)-3

继续上面2篇的说吧,在前面的2篇文章里面我一直使用的hints来强制使用Nested Loops,细心的朋友一定也发现了,如果没有使用hints,SQL就走hash join了,而且hash join...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)