`
lixin_2002
  • 浏览: 21550 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

PL/SQL复习五 集合方法

SQL 
阅读更多

1.exists:判断某集合元素是否存在

declare

  type ename_table_type is table of emp.ename%type;

  ename_table ename_table_type;

begin

  if ename_table.exists(1) then

    dbms_output.put_line('存在');

    else

      dbms_output.put_line('不存在');

  end if;

end;

/

2.count:返回集合元素的个数 例如:ename_table.count

3.limit:返回该集合允许的最大元素个数 索引表和嵌套无边界所以返回null 例如:ename_table.limit

4.first、last:返回集合第一个和最后一个元素的下标 例如:ename_table.first

5.frior、next:返回当前集合元素的前、后一个元素的下标 例如:ename_table.frior(5)

6.extend:用于扩展集合变量的尺寸,只适用于嵌套表和varray,有如下形式

   extend:为集合变量添加一个null元素

   extend(n):为集合变量添加n 个null元素

   extend(n,i):为集合添加n个元素,元素值与第i个元素相同

7.trim:用于从集合尾删除元素, trim删除一个 trim(n)删除n个

8.delete 删除集合元素,只适用于嵌套和索引表

  delete:删除所有元素  delete(n) 删除第n 个元素  delete(m,n)删除集合变量从m到n之间的所有元素

 

给集合赋null值,只需将一个集合等于另一个没赋值的集合

 

 

集合操作符:

1.set:返回取消特定嵌套表中的重复值的嵌套表

declare

  type nt_table_type is table of integer;

  nt_table nt_table_type := nt_table_type(2,4,3,2,1);

  res nt_table_type;

begin

  res := set(nt_table);

  for i in 1..res.count loop

    dbms_output.put_line(res(i));

  end loop;

end;

/

2.multiset union:取得两个嵌套表的并集 用法:

  result = nt1 multiset union nt2;

3.multiset union distinct:取得并集,去掉重复值

     result = nt1 multiset union distinct nt2;

4.multiset intersect:取得交集

  result = nt1 multiset intersect nt2;

5.multiset except:取差集

  result = nt1 multiset except nt2;

 

 

集合的比较:

1. array_name is null:检测是否为空

2.ename_table1 = ename=table2:比较两个集合是否完全相同

嵌套表的:

3.cardinality:返回元素个数

4.submultiset of:是否是子表

5.member of:是否包含特定元素 v1 member of nt1 

6.is a set:检测是否包含重复元素值 nt1 is a set

 

分享到:
评论

相关推荐

    PL/SQL基础

    5. **集合和记录**:PL/SQL支持数组(PL/SQL VARRAYs和PL/SQL TABLES)以及记录(用户定义的数据结构),方便处理多条数据或复杂数据结构。 6. **游标**:游标是用于遍历查询结果集的一种机制,允许我们一次处理一...

    数据结构课后题解答(C语言描述)

    数据结构包括线性结构、树形结构、图结构和集合等,每种结构都有其特定的操作和应用。例如,线性结构如数组和链表,它们适用于顺序访问和遍历;树形结构如二叉树和堆,它们在搜索、排序等方面表现出色;图结构则在...

    oracle复习笔记之PL/SQL程序所要了解的知识点

    在复习PL/SQL时,以下是一些核心知识点: 1. **基本语法**:PL/SQL程序通常由`DECLARE`、`BEGIN`、`EXCEPTION`和`END`四个部分组成。`DECLARE`用于声明变量、常量、游标等;`BEGIN`是程序执行的主要部分,包含各种...

    Oracle选择题复习(带答案).doc

    Oracle 选择题复习(带答案) 本资源摘要信息涵盖了 Oracle 数据库的多个方面,包括数据库启动和关闭、参数文件、控制文件、表空间、PL/SQL 编程、异常处理、数据库性能等。 参数文件 * 在参数文件中,以 # 符号...

    oracle复习

    为了帮助大家更好地复习Oracle的相关知识,本文将深入解析Oracle的体系结构、监听器设置、安全性、数据类型、SQL访问、视图、索引、表空间、PL/SQL编程等关键知识点。 #### 一、Oracle体系结构 Oracle数据库的体系...

    大型数据库复习资料.pdf

    在数据库管理中,PL/SQL是一种过程式语言,常用于Oracle数据库系统。在给定的文件中,有三个PL/SQL编程相关的示例: 1. 计算阶乘之和的PL/SQL块:这个代码段展示了如何使用PL/SQL循环计算1到10的阶乘之和。`DECLARE...

    ORACLE复习纲要 杭电

    - 游标用于逐行处理查询结果,存储过程、函数和触发器是PL/SQL的应用,用于实现业务逻辑。 7. **权限和角色管理**: - 用户的创建和删除是数据库管理的基础,权限分为系统权限和对象权限。 - WITH ADMIN OPTION...

    OCP061、062、063题库

    1. PL/SQL编程:PL/SQL块的结构,变量声明,流程控制语句,异常处理。 2. PL/SQL包:创建和使用包,封装代码,提高复用性。 3. 过程和函数:创建自定义过程和函数,以及在SQL语句中调用它们。 4. 触发器:使用触发器...

    OCA Oracle Database 11g SQL Fundamentals I Exam Guide

    《OCA Oracle Database 11g SQL Fundamentals I Exam Guide》是针对Oracle数据库11g的SQL基础部分的考试复习指南,主要针对1Z0-051考试。这本书涵盖了Oracle SQL的基础概念、操作和应用,是准备Oracle认证考试的重要...

    Book 学习笔记

    这本书籍的电子版可能详细讲解了PL/SQL的语法、程序控制结构、异常处理以及与Oracle数据库交互的方法,适合对数据库编程感兴趣的读者深入学习。 总之,这份"Book 学习笔记"提供了从基础到高级的IT知识,无论你是想...

    OCA+Oracle+Database+SQL+Expert+Exam+Guide.pdf

    - **游标与集合处理**:游标的使用方法以及PL/SQL中的集合处理技术。 - **异常处理**:如何在PL/SQL块中处理异常情况。 - **性能优化**:SQL调优技巧、索引优化、查询优化等。 - **安全性和审计**:了解Oracle...

    oracle考证的模似试题

    1. **SQL基础**:这部分考察你对SQL语言的理解,包括SELECT语句的使用、联接操作、子查询、集合函数和分组统计等。通过模拟试题,你可以检查自己能否正确编写查询,理解数据处理的基本逻辑。 2. **数据库体系结构**...

    [1z0-051]OCA.Oracle.Database.11g.SQL.Fundamentals.I.Exam.Guide.Exam

    10. **PL/SQL基础**:虽然不是SQL的基础部分,但作为扩展,PL/SQL是Oracle数据库中的过程式编程语言,可能会涉及到基本的PL/SQL块结构、变量声明、流程控制语句以及异常处理。 通过深入学习这些知识点,考生将能够...

    SQLServer Oracle题库大全

    【SQLServer与Oracle题库大全】是一份涵盖了广泛数据库理论及实践问题的资源集合,旨在帮助用户快速提升在SQLServer和Oracle数据库管理方面的知识水平。这份题库包含了多个不同公司的面试题和测试题目,覆盖了从基础...

    数据库 SQL 习题 SQL大全内含完整习题整理,有答案

    最后,Oracle数据库复习题整理.doc可能包含了关于Oracle特定的SQL特性,如PL/SQL(Oracle的编程语言扩展)、触发器(Trigger)、索引(Index)、分区(Partitioning)和事务管理(Transaction Management)等内容。...

    Oracle OCP 认证 007,042,043 考试复习题

    1. PL/SQL编程:理解PL/SQL语法,编写过程、函数、包和异常处理。 2. 高级SQL:窗口函数,集合操作的复杂应用,以及高级查询技巧。 3. 应用程序接口:Oracle提供的API,如DBMS_XXX包,用于数据库的自定义操作和集成...

    oracle 10g ocp考试题库 007

    2. SQL语言:深入理解SQL查询语句,包括SELECT、INSERT、UPDATE、DELETE以及高级的联接、子查询、集合操作、索引的使用等。同时,了解SQL*Plus工具的使用也是必要的。 3. PL/SQL编程:学习PL/SQL语法,包括变量、...

    ocp053稳过,本人5月5号已过

    2. **SQL与PL/SQL**:深入理解SQL查询语句、子查询、联接操作、集合函数,以及PL/SQL的程序结构、异常处理、游标等。 3. **实战经验**:解决实际问题的能力,如故障排查、性能调优、数据迁移等,可能会有模拟案例供...

Global site tag (gtag.js) - Google Analytics