我想和你唱任贤齐天涯,平顶山房地产网,传感器类型
当你用start with connect by nocycle prior
进行递归查找数据的时候那么下面两段代码的性能肯定是有明显差别的大家用的时候 请注意了代码可以不看下面 直接看我的总结
//查询某个文件夹文件夹id=12里面的层次数以及 文件的个数
a:为文件之间的关联关系 上下级关系
b:为文件夹里面的文件
正解:
select count(0) cou,max(levels)+1 as levels
select c.a1,c.a2,c.levels...
from
(select a.a1 ,a.a2,,,
level levels//层次关系
from a
where a.a1=,,,
and a.a2=....
start with a.a1 = 12
connect by nocylce prior a.id=a.parentid
) c left join b
on c.文件id=b.文件id
and c.文件类型=文件夹
错解:
select count(0) cou,max(levels)+1 as levels
select c.a1,c.a2,c.levels...
from
(select a.a1 ,a.a2,,,
level levels//层次关系
from a
left join b
on c.文件id=b.文件id
where c.文件类型=文件夹
and a.a1=,,,
and a.a2=....
start with a.a1 = 12
connect by nocylce prior a.id=a.parentid
) c
上面代码的区别在于
正确的做法是:
先递归循环出某个文件夹下面的所有的文件夹以及文件在关联文件表查找文件的内容
错误的做法是:
先找到某个文件夹下面的 文件夹和文件
然后再 递归循环出 他下面的文件夹里面所有的文件夹以及文件
这样就造成了关联关联后冗余的数据 一起进行了 循环递归 本来就和文件没有关系 不应该吧文件也放进来递归
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!!
点击进行留言回复
相关文章:
-
-
-
快速向表插入大量数据
当需要对一个非常大的表INSERT的时候,会消耗非常多的资源,因为update表的时候,oracle需要生成 redo log和undo log;此时最...
[阅读全文]
-
-
-
Oracle入门学习五
学习视频: https://www.bilibili.com/video/BV1tJ411r7EC?p=55 数据的完整性:保证插入表格的数据必须正确。...
[阅读全文]
-
Oracle入门学习六
事务:把一组操作看做一个工作单元,要么都执行,要么都不执行。dml操作才有事务,查询没有事务。 开始事务:从上一次的事务结束之后,从第一次dml操作,就...
[阅读全文]
-
-
-
Oracle入门学习一
oracle的安装,用户授权,表格操作,数据类型,ddl表格,dml数据。 下一篇:Oracle入门学习二 学习视频:https://www.bilib...
[阅读全文]
-
Oracle入门学习二
上一篇:Oracle入门学习一 学习视频:https://www.bilibili.com/video/BV1tJ411r7EC?p=15 算术运算符:...
[阅读全文]
网友评论