oracle高级sql指南

     正在编写oracle高级sql开发指南,包含开发中常用的oracle sql技术,以及复杂的sql分析技术,性能调整等问题。并且收录一些比较优秀的sql。下面是暂定目录:

Advanced sql in oracle

1.集合操作... 2

1.1.unionunion all 2

1.2.intersect交集操作... 3

1.3. minus差集操作... 3

2.existsnot exists的使用... 4

2.1. exists的使用... 4

2.2 not exists的使用... 5

3.with子句... 6

4.merge into合并资料... 8

5.层次查询(Hierarical Retrival) 11

6.decode函数和行列互换... 22

7.case表达式... 30

7.1 case简介... 30

7.2 两种case. 31

7.3 综合实例... 32

8.rownum—top-N分析... 34

9.相关子查询和非相关子查询... 37

10.增强的group by. 38

11.分析函数... 39

12. oracle10g正则表达式... 39

13.使用hint 39

14.Parition分区... 39

15.并行操作... 39

16.扩展DDLDML语句... 40

16.1 背景和目标... 40

16.2 经常使用的扩展... 40

16.3向多个目标insert 41

16.4 external tables(外部表) 45

17.Model语句... 46

18.专题行列转换... 46

 

1.集合操作

学习oracle中集合操作的有关语句,掌握union,union all,minus,interest的使用,能够描述结合运算,并且能够将多个查询组合到一个查询中去,能够控制行返回的顺序。

包含集合运算的查询称为复合查询。见表格1-1

1-1

Operator

Returns

content

UNION

由每个查询选择的所有不同的行

 并集不包含重复值

UNION ALL

由每个查询选择的所有的行,包括所有重复的行

完全并集包含重复值

INTERSECT

由两个查询选择的所有不同的行

 交集

MINUS

由第一个查询选择的所有不同的行

 差集

 

所有的集合运算与等号的优先级相同,如果SQL语句包含多个集合运算并且没有圆括号明确地指定另一个顺序,Oracle服务器将以从左到右的顺序计算。你应该使用圆括号来明确地指定带另外的集合运算的INTERSECT (相交) 运算查询中的赋值顺序。

Union all 效率一般比union高。

1.1.unionunion all

UNION(联合)运算

UNION运算返回所有由任一查询选择的行。用UNION运算从多表返回所有行,但除去任何重复的行。

原则 :

 

你可能感兴趣的:(oracle管理和开发)