第一个执行计划里 filter("VPD_YEAR"= (SELECT MAX("VPD_YEAR") FROM "COMPANYINFO" "COMPANYINFO") AND "STOPFLAG"=0 AND "ACCBOOKID"=0) 是在最后过滤的第二个执行计划,在里层先过滤,再做connect连接,数据量大大减少
昨天没看清楚问题,解释一下 1. 这个不纠结了,不是主要问题,spool 、截图都行 2. 这个缩进主要是根据执行计划的级别/深度(depth)来的,你说的顺序是对的 3. 3(56)8 和 42 97 4. 在第二个执行计划里,使用 SELECT compid,compname,pcompid from companyinfo c where vpd_year =(select max(vpd_year) from companyinfo ) and stopflag = 0 AND ACCBOOKID = 0 来进行connect by连接,因此(select max(vpd_year) from companyinfo )出现了两次,SORT AGGREGATE对应的是max()聚合的过程 5. *代表有谓词条件,具体的信息查看下面的Predicate Information 6. 聚合操作。聚合本身也是一个排序 7. 参照第5
filter("VPD_YEAR"= (SELECT MAX("VPD_YEAR") FROM "COMPANYINFO"
"COMPANYINFO") AND "STOPFLAG"=0 AND "ACCBOOKID"=0)
是在最后过滤的第二个执行计划,在里层先过滤,再做connect连接,数据量大大减少
1. 这个不纠结了,不是主要问题,spool 、截图都行
2. 这个缩进主要是根据执行计划的级别/深度(depth)来的,你说的顺序是对的
3. 3(56)8 和 42 97
4. 在第二个执行计划里,使用
SELECT compid,compname,pcompid from companyinfo c
where vpd_year =(select max(vpd_year) from companyinfo ) and stopflag = 0 AND ACCBOOKID = 0
来进行connect by连接,因此(select max(vpd_year) from companyinfo )出现了两次,SORT AGGREGATE对应的是max()聚合的过程
5. *代表有谓词条件,具体的信息查看下面的Predicate Information
6. 聚合操作。聚合本身也是一个排序
7. 参照第5