集合函数;
declare
type list_nested is table of varchar2(100) not null;
v_all list_nested := list_nested('changan','hubei','shanghai','beijing','Android','Java-Android');
BEGIN
v_all.delete(1);
for x in v_all.first .. v_all.last loop
dbms_output.put_line(v_all(x));
end loop;
--dbms_output.put_line('list leng:' || v_all.count );
end;
/ declare
type list_nested is table of varchar2(100) not null;
v_all list_nested := list_nested('changan','hubei','shanghai','beijing','Android','Java-Android');
BEGIN
v_all.delete(1,3); --指定删除索引范围的数据;
for x in v_all.first .. v_all.last loop
dbms_output.put_line(v_all(x));
end loop;
dbms_output.put_line('list leng:' || v_all.count );
end;
/ declare
type list_nested is table of varchar2(100) not null;
v_all list_nested := list_nested('changan','hubei','shanghai','beijing','Android','Java-Android');
BEGIN
if v_all.EXISTS(1) then
dbms_output.put_line('索引为1的数据存在');
end if;
if not v_all.EXISTS(10) then
dbms_output.put_line('索引为10的数据不存在');
end if;
end;
/ declare
type list_nested is table of varchar2(100) not null;
v_all list_nested := list_nested('FireFox','firefox.com','www.firefox.com');
begin
dbms_output.put_line('原始长度' || v_all.count);
v_all.extend(2);
dbms_output.put_line('扩充之后长度' || v_all.count);
v_all(4) := 'www.google.com';
v_all(5) := 'Google.com';
for x in v_all.first .. v_all.last loop
dbms_output.put_line(v_all(x));
end loop;
end;
/ 范例
扩充集合长度,并使用已有内容填充
declare
type list_nested is table of varchar2(100) not null;
v_all list_nested := list_nested('FireFox','firefox.com','www.firefox.com');
begin
dbms_output.put_line('原始长度' || v_all.count);
v_all.extend(2 , 3);
dbms_output.put_line('扩充之后长度' || v_all.count);
for x in v_all.first .. v_all.last loop
dbms_output.put_line(v_all(x));
end loop;
end;
/ 范例
集合函数count limit
declare
type list_varray is varray(20) of varchar2(100);
v_info list_varray := list_varray('firefox.com','www.firefox.com','www.oracle.com');
begin
dbms_output.put_line('数组集合的最大长度' || v_info.limit);
dbms_output.put_line('数组集合的数据量' || v_info.count);
end;
/ declare
type info_index is table of varchar2(20) index by PLS_INTEGER;
v_info info_index;
v_foot number;
begin
v_info(1) := 'FireFox';
v_info(10) := 'Java';
v_info(-10) := 'oracle';
v_info(-20) := 'EJB';
v_info(30) := 'Android';
v_foot := v_info.first;
while (v_info.exists(v_foot)) loop
dbms_output.put_line('v_info (' || v_foot ||') = ' || v_info(v_foot);
v_foot := v_info.next(v_foot) ;
end loop;
end;
/ declare
type info_index is table of varchar2(20) index by PLS_INTEGER;
v_info info_index;
v_foot number;
begin
v_info(1) := 'FireFox';
v_info(10) := 'Java';
v_info(-10) := 'oracle';
v_info(-20) := 'EJB';
v_info(30) := 'Android';
DBMS_OUTPUT.put_line('索引为10的下一个索引是:' || v_info.next(10));
dbms_output.put_line('索引为-10的上一个索引是:' || v_info.prior(-10));
end;
/ declare
type list_varray is varray(8) of varchar2(50);
v_info list_varray := list_varray('FireFox','www.FireFox','www.Google.com','EJB');
begin
dbms_output.put_line();
for x in v_info.first .. v_info.last loop
dbms_output.put_line(v_info(x));
end loop;
end;
/
declare
type list_varray is varray(8) of varchar2(100);
v_info list_varray := list_varray('FireFox','www.firefox.com','oracle','oracle_username');
begin
dbms_output.put_line('删除集合之前的数量:' || v_info.count);
v_info.trim; -- 删除一个数据;
dbms_output.put_line('v_info.trim 删除集合之后的数据量 :' || v_info.count);
v_info.trim(2); -- 删除2个数据;
dbms_output.put_line('v_info.trim(2) 删除集合之后的数据量 :' || v_info.count);
for x in v_info.first .. v_info.last loop
dbms_output.put_line(v_info(x));
end loop;
end;
/

oracle开发学习篇之集合函数的更多相关文章

  1. oracle开发学习篇之集合运算符以及集合异常捕获

    --取出集合;长度 declare type list_nested ) not null; v_all list_nested := list_nested('a','b','c','d','c', ...

  2. python开发学习-day03(set集合、collection系列 、深浅拷贝、函数)

    s12-20160116-day03 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...

  3. Oracle DBA学习篇之SQL_TRACE

    SQL_TRACE ; ; set serveroutput on; alter session set sql_trace=true; select count(*) from firefox; a ...

  4. Oracle学习第三篇—多行函数

    0 order by asc/desc 默认升序 order by 列的名字|表达式|别名|序号 把空放在后边:order by desc nulls last 1分组函数--会自动滤空值 count ...

  5. ASP.NET Core Web开发学习笔记-1介绍篇

    ASP.NET Core Web开发学习笔记-1介绍篇 给大家说声报歉,从2012年个人情感破裂的那一天,本人的51CTO,CnBlogs,Csdn,QQ,Weboo就再也没有更新过.踏实的生活(曾辞 ...

  6. Unity 3D游戏开发学习路线(方法篇)

    Unity 3D本来是由德国的一些苹果粉丝开发的一款游戏引擎,一直只能用于Mac平台,所以一直不被业外人士所知晓.但是后来也推出了2.5版,同时发布了PC版本,并将其发布方向拓展到手持移动设备.Uni ...

  7. iOS开发数据库篇—SQLite常用的函数

    iOS开发数据库篇—SQLite常用的函数 一.简单说明 1.打开数据库 int sqlite3_open( const char *filename,   // 数据库的文件路径 sqlite3 * ...

  8. iOS开发Swift篇—(七)函数(1)

    iOS开发Swift篇—(七)函数 一.函数的定义 (1)函数的定义格式 func 函数名(形参列表) -> 返回值类型 { // 函数体... } (2)形参列表的格式 形参名1: 形参类型1 ...

  9. iOS开发Swift篇—(八)函数(2)

    iOS开发Swift篇—(八)函数(2) 一.函数类型 函数类型也是数据类型的一种,它由形参类型和返回值类型组成,格式是 (形参类型列表) -> 返回值类型 func sum(num1: Int ...

随机推荐

  1. CRF条件随机场

    CRF的进化 https://flystarhe.github.io/2016/07/13/hmm-memm-crf/参考: http://blog.echen.me/2012/01/03/intro ...

  2. python之uinttest,用例执行顺序

    unittest单元测试框架, 以test开头的测试用例,默认执行顺序是按照ASC码来执行 如果有类,先排序执行类,在执行类中,再排序用例顺序执行 如果想要按照指定的顺序执行测试用例. 那么就需要用到 ...

  3. github后端开发面试题大集合(二)

    作者:小海胆链接:https://www.nowcoder.com/discuss/3615?type=0&order=0&pos=8&page=0来源:牛客网 7.非关系型数 ...

  4. Java - 利用StringEscapeUtils对字符串进行各种转义与反转义

    来自:http://blog.csdn.net/chenleixing/article/details/43456987 --------------------------------------- ...

  5. 《精通Python设计模式》学习之工厂方法

    小书,在我以前作数据库的连接时,就用了这个工厂方法的. 归纳总结一下,更有利于成长吧. import xml.etree.ElementTree as etree import json class ...

  6. 微商城三级分销源码公众号开发 微分销 C#源码

    需要源码,请加QQ:858-048-581 ,可以查看演示 运行环境:vs2012+ sql2008r2 [什么是微分销] 微分销是助力企业进军移动电商,完善分销体系搭建微信分销系统.基于微信平台,搭 ...

  7. mongo学习链接

    http://www.runoob.com/mongodb/mongodb-create-database.html

  8. 【LOJ】#2558. 「LNOI2014」LCA

    题解 当年LN还是有专门的省选题的,但是还不如没有 看到这道题,我就想到了一个清晰易懂,简单好写,代码优美的树链剖分线段树套主席树的\(O(q\log^{3}n)\)做法,且就5组数据出题人肯定是不会 ...

  9. LoadRunner 参数化之 连接数据库进行参数化

    LoadRunner 参数化之 连接数据库进行参数化 Loadrunner(简称“LR”)对性能测试的脚本进行参数化时,由于数据量偏大,大家往往都会把数据录入到数据库表里,然后关联到LR,本文将详细介 ...

  10. Java学习笔记之:Spring MVC 环境搭建

    一.创建项目 1.新建java动态项目 2.在web-inf/lib文件夹下导入jar 3.创建所需要的包和文件 二.搭建SpringMVC 1.配置web.xml(WEB-INF下) <?xm ...