ORACLE的常用高级查询

子查询:单行子查询、多行子查询、多列子查询

      子查询在WHERE子句中:

             

             

           

子查询在HAVING子句中:

    

子查询在FROM部分:

子查询在SELECT中:


分页查询:

            SELECT * FROM (

                   SELECT a.* , ROWNUM  rw  

                         FROM(

                                SQL语句(根据查询条件写出来的SQL语句){需要我们写的sql}

                               ) a

                             WHERE ROWNUM < 结束行号 )

                    WHERE  rw >   开始行号   


DECODE函数:




排序函数:

ROW_NUMBER:

 

RANK:


DENSE_RANK:


高级分组函数:


ROLLUP:

           对于ROLLUP的列从右到左以一次少一列的方式进行分组直到所有列都去掉后的分组(也就是全表分组)

          对于n个参数的的ROLLUP,有n+1次分组


CUBE:

         对于n个参数的cube,有2的n次方次分组

         CUBE(a , b ,c)对(a ,b ,c)、(a,b)、(a,c)、(b,c)、(a)、(b)(c)依次进行GROUP BY,最后再对全表进行GROUP BY;


GROUPING SETS:

         使用GROUP BY GROUPING SETS(a,b,c),则对(a),(b),(c)进行GROUP BY


视图:简化复杂操作、限制数据访问(隐藏数据)、虚表,虚拟的一张表

                     CREATE   [OR REPLACE]   VIEW  view_name  AS   select查询语句

                     对视图的基本操作和对表的基本操作一样。


序列:

     

索引:


     在做查询时ORACLE会自动引入索引,加快查询时速度,提升查询效率!

     在对索引列进行修改后需要重构索引:

     ALTER  INDEX  index_name  REBUILD





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值