【Oracle笔记】递归以及索引的一丢丢使用
【笔记】递归以及索引的一丢丢使用
递归写法,树查询
connect by nocycle prior
START WITH XXX
CONNECT BY PRIOR XXX
ORDER BY XXX
就算是在其中添加了where条件,也只是树的结构的一部分,并没有改变树的结构
SELECT LEVEL, t.*,o.wfid
FROM (SELECT cb.I,
c1.m_id,
c1.segment1_m,
c2.sub_id,
c2.segment1_sub
FROM cb,c1,cbd,c2
WHERE XXX
AND XXX
AND XXX
AND XXX
and XXX
) t,OO o
where o.ot = xx and o.w = xxx ---对查询结果进行过滤
START WITH t.m_id = o.O---顶层ID ---先走的这个
CONNECT BY PRIOR t.sub_id = t.m_id
ORDER BY LEVEL,I,segment1_m
这种结构查询的话是对所有的结果进行查询以后再进行过滤,而且如果其中出现了死循环的话,可能会直接报错
所以使用的话,可以放在游标中或者存储过程中通过传参的方式来进行,不推荐使用表连接的方式去查询,会相当的慢
数据库索引的使用
很多时候,虽然加了索引,但是还是很慢,这种情况下,可能是没有用到这个索引
可以通过对自己SQL语句的条件进行变化而使用上索引
比如一个表的索引是Normal类型,对象有A,B,C
如果在语句中只使用A作为连接条件进行表连接的话,可能就不会触发这个索引,在同时使用了这三个以后,就会快很多,如果数据量比较大的话,速度的提示可能是几十倍的提升
【Oracle笔记】递归以及索引的一丢丢使用的更多相关文章
- Oracle笔记 目录索引
Oracle笔记 一.oracle的安装.sqlplus的使用 Oracle笔记 二.常用dba命令行 Oracle笔记 三.function .select Oracle笔记 四.增删改.事务 Or ...
- 【三思笔记】 全面学习Oracle分区表及分区索引
[三思笔记]全面学习Oracle分区表及分区索引 2008-04-15 关于分区表和分区索引(About PartitionedTables and Indexes) 对于 10gR2 而言,基本上可 ...
- Oracle笔记(十三) 视图、同义词、索引
一.视图 在之前所学习过的所有的SQL语法之中,查询操作是最麻烦的,如果程序开发人员将大量的精力都浪费在查询的编写上,则肯定影响代码的工作进度,所以 一个好的数据库设计人员,除了根据业务的操作设计出数 ...
- 韩顺平Oracle笔记
韩顺平Oracle笔记 分类: DataBase2011-09-07 10:24 3009人阅读 评论(0) 收藏 举报 oracle数据库sqljdbcsystemstring 目录(?)[-] ...
- 转:oracle笔记
oracle笔记1 卸载oracle developer server的方法: 1-1 oracle卸载工具中卸载对应的oracleds项目:在注册表中搜索ORACLEDS HOME对应的别名,删除对 ...
- Mongodb Manual阅读笔记:CH7 索引
7索引 Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作Mongodb Manual阅读笔记:CH3 数据模型(Data Models)Mongodb Manual阅读笔记 ...
- Oracle外键不加索引会引起死锁问题
转载链接:http://www.jb51.net/article/50161.htm 这篇文章主要介绍了Oracle外键不加索引引起死锁的情况及解决,需要的朋友可以参考下 --创建一个表,此表作为子表 ...
- 深入学习Oracle分区表及分区索引
关于分区表和分区索引(About Partitioned Tables and Indexes)对于10gR2而言,基本上可以分成几类: • Range(范围)分区 • Has ...
- oracle 分区表和分区索引
很复杂的样子,自己都没有看完,以备后用 http://hi.baidu.com/jsshm/item/cbfed8491d3863ee1e19bc3e ORACLE分区表.分区索引ORACLE对于分区 ...
- Oracle的几种索引
Oracle 提供了多种不同类型的索引以供使用.简单地说, Oracle 中包括如下索引: 1. B* 树索引 这些是我所说的 “ 传统 “ 索引.到目前为止,这是 Oracle 和大多数其他数据库中 ...
随机推荐
- 没有 Release 文件的解决方法
https://blog.csdn.net/weixin_44903509/article/details/108825738 sudo apt-get update 出现问题 E: 仓库 " ...
- Java | zuul 1.x 是如何实现请求转发的
zuul 1.x 是如何实现请求转发的 文档写的再好,也不如源码写的好 源码地址: GitHub: https://github.com/Netflix/zuul Gitee: https://git ...
- js之实现页面内所有图片旋转
javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI=do ...
- opencv-python笔记(1)
openCV笔记 图像 灰度图像 0代表纯黑色,255代表白色(类似亮度) 通道拆分 通过索引拆分: import cv2 lena=cv2.imread("lenacolor.png& ...
- 记录--手把手教你,用electron实现截图软件
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 背景 因为我们日常开发项目的时候,需要和同事对接api和文档还有UI图,所以有时候要同时打开多个窗口,并在多个窗口中切换,来选择自己要的信 ...
- WPF MVVM 集合内容更改时如何添加操作,触发通知
用过mvvm设计WFP程序的人都知道,在我们mvvm中有一个非常重要的接口叫做 INotifyPropertyChanged 这个接口的主要作用是用于触发属性更改时向我们xaml中绑定此属性值的控件发 ...
- .NET Emit 入门教程:第五部分:动态生成方法(MethodBuilder 与 DynamicMethod)
前言: 当我们涉及到在运行时生成和定义方法时,便需要使用到C#中的两个关键类之一:MethodBuilder 或 DynamicMethod. 这两者都属于反射(Reflection.Emit)的一部 ...
- Oracle 视图创建自增ID
select ROW_NUMBER() over (order by sysdate()) as id
- 什么是HSV色彩空间
BGR色彩空间是基于三基色而言,即红色.绿色.蓝色.而HSV色彩空间则是基于色调.饱和度和亮度而言的. 色调(H)是指光的颜色,例如,彩虹中的赤,橙,黄,绿,青,蓝,紫分别表示不同的色调.在OpenC ...
- Spring Boot 工程开发常见问题解决方案,日常开发全覆盖
本文是 SpringBoot 开发的干货集中营,涵盖了日常开发中遇到的诸多问题,通篇着重讲解如何快速解决问题,部分重点问题会讲解原理,以及为什么要这样做.便于大家快速处理实践中经常遇到的小问题,既方便 ...