10g是32位的服务器配置为:CPU E5520*2 内存8G win200311g是64位的服务器配置为:CPU E5-4607*2 内存32G win2008r2同样的查询语句
select A.*, B.*, C.*, D.*
from MTR_RPT_CELL_E A,
Mtr_RPT_BASE B,
Sys_v_SecurityUsers C,
Sys_v_District D
where A.RptID = B.ID
And B.UserID = C.EMDID
And B.DistrictID = D.DistrictID
And D.Class <= 3
And B.TemplateID = 21
Sys_v_SecurityUsers,Sys_v_District为视图。
在10g中执行5秒,而在11g中半个小时都查询不出来。Oracle 11g
select A.*, B.*, C.*, D.*
from MTR_RPT_CELL_E A,
Mtr_RPT_BASE B,
Sys_v_SecurityUsers C,
Sys_v_District D
where A.RptID = B.ID
And B.UserID = C.EMDID
And B.DistrictID = D.DistrictID
And D.Class <= 3
And B.TemplateID = 21
Sys_v_SecurityUsers,Sys_v_District为视图。
在10g中执行5秒,而在11g中半个小时都查询不出来。Oracle 11g
解决方案 »
- sqlloader中skip如何使用
- XP下的PLSQL Developer连接虚拟机Linux中的Oracle
- oracle新手提问:ORA-06502: PL/SQL: 数字或值错误 : 字符到数值的转换错误
- 判断GBK汉字的问题
- 十万火急:如何在动态语句中使用表名的变量?
- 想启动isqlplus,如何配置?
- 关于SQLLDR的问题
- 在asp脚本中调用存储过程出错,求教,急
- 散分问题:现在的机器上已有一个oracle 8i服务器了,我现在需要登录另一台机器上的oracle 8i服务器,我该怎么操作呢?谢谢,来者有分!!!!
- 朋友哥哥结婚 散分
- 关于使用group by 返回多列的子查询问题
- 本机的和客户端的SQLPLUS可以执行的操作,有什么区别吗?还是完全一样?
HASH UNIQUE 4 3 60
TABLE ACCESS FULL SCSME SYS_USERTYPEROLE 3 3 60
SORT ORDER BY 720073 2571251 3342626300
HASH JOIN 18882 2571251 3342626300
HASH JOIN RIGHT OUTER 1222 63364 77494172
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 5028 120672
HASH JOIN 1212 63364 75973436
VIEW SCSME SYS_V_DISTRICT 34 219 73803
UNION-ALL
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 1 32
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 21 672
HASH JOIN RIGHT OUTER 17 196 12544
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 21 672
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 196 6272
FILTER
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 21
NESTED LOOPS 12 1 85
NESTED LOOPS 10 1 64
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 1 32
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 32
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
HASH JOIN 1177 83617 72077854
VIEW SCSME 410 7425 5613300
UNION-ALL
HASH JOIN 26 257 46517
TABLE ACCESS FULL SCSME PUB_MANAGEMENT 3 261 18270
INLIST ITERATOR
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 22 257 28527
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 6 257
TABLE ACCESS FULL SCSME SYS_SECURITYUSERS 57 48 5328
HASH JOIN RIGHT OUTER 160 6739 1819530
VIEW SCSME PUB_V_ENTERPRISERELA 1 1 40
NESTED LOOPS 1 1 102
NESTED LOOPS 0 1 73
INDEX FULL SCAN SCSME PK_PUB_ENTERPRISERELA 0 1 40
INDEX UNIQUE SCAN SCSME PK_PUB_ENTERPRISEINFO 0 1 33
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 1 1 29
HASH JOIN 158 6739 1549970
TABLE ACCESS FULL SCSME PUB_ENTERPRISEINFO 100 6717 799323
TABLE ACCESS FULL SCSME SYS_SECURITYUSERS 57 12061 1338771
HASH JOIN 158 349 80270
TABLE ACCESS FULL SCSME PUB_ENTERPRISEINFO 100 348 41412
TABLE ACCESS FULL SCSME SYS_SECURITYUSERS 57 12061 1338771
HASH JOIN 8 32 6080
INLIST ITERATOR
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 5 32 3552
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 3 32
TABLE ACCESS FULL SCSME PUB_SRVPLATFORMINFO 3 32 2528
TABLE ACCESS FULL SCSME MTR_RPT_BASE 212 50249 5326394
TABLE ACCESS FULL SCSME MTR_RPT_CELL_E 5282 2038976 157001152这是11G中的
SELECT STATEMENT, GOAL = ALL_ROWS 41 1 3369
HASH UNIQUE 4 2 38
TABLE ACCESS FULL SCSME SYS_USERTYPEROLE 3 2 38
SORT ORDER BY 41 1 3369
NESTED LOOPS 40 1 3369
NESTED LOOPS OUTER 29 1 3028
NESTED LOOPS 27 1 3004
NESTED LOOPS 2 1 2246
TABLE ACCESS FULL SCSME MTR_RPT_CELL_E 2 1 1075
TABLE ACCESS BY INDEX ROWID SCSME MTR_RPT_BASE 0 1 1171
INDEX RANGE SCAN SCSME PK_MTR_RPT_BASE 0 1
VIEW SCSME 25 1 758
UNION ALL PUSHED PREDICATE
HASH JOIN 7 1 172
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 3 1 103
INDEX RANGE SCAN SCSME PK_SYS_SECURITYUSERS 2 1
TABLE ACCESS FULL SCSME PUB_MANAGEMENT 3 1 69
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 3 1 103
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 2 1
TABLE ACCESS BY INDEX ROWID SCSME PUB_SRVORGINFO 1 1 40
INDEX UNIQUE SCAN SCSME PK_PUB_SRVORGINFO 0 1
TABLE ACCESS BY INDEX ROWID SCSME PUB_SRVORGINFO 1 1 43
INDEX UNIQUE SCAN SCSME PK_PUB_SRVORGINFO 0 1
TABLE ACCESS BY INDEX ROWID SCSME PUB_SRVORGINFO 1 1 38
INDEX UNIQUE SCAN SCSME PK_PUB_SRVORGINFO 0 1
NESTED LOOPS OUTER 6 1 258
NESTED LOOPS 4 1 236
TABLE ACCESS BY INDEX ROWID SCSME PUB_ENTERPRISEINFO 2 1 133
INDEX UNIQUE SCAN SCSME PK_PUB_ENTERPRISEINFO 1 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 2 1 103
INDEX RANGE SCAN SCSME PK_SYS_SECURITYUSERS 1 1
VIEW PUSHED PREDICATE SCSME PUB_V_ENTERPRISERELA 2 1 22
NESTED LOOPS 2 1 100
NESTED LOOPS 1 1 73
INDEX UNIQUE SCAN SCSME PK_PUB_ENTERPRISEINFO 1 1 33
INDEX RANGE SCAN SCSME PK_PUB_ENTERPRISERELA 0 1 40
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 1 1 27
TABLE ACCESS BY INDEX ROWID SCSME PUB_SRVORGINFO 1 1 38
INDEX UNIQUE SCAN SCSME PK_PUB_SRVORGINFO 0 1
NESTED LOOPS 4 1 236
TABLE ACCESS BY INDEX ROWID SCSME PUB_ENTERPRISEINFO 2 1 133
INDEX UNIQUE SCAN SCSME PK_PUB_ENTERPRISEINFO 1 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 2 1 103
INDEX RANGE SCAN SCSME PK_SYS_SECURITYUSERS 1 1
NESTED LOOPS
NESTED LOOPS 6 1 182
TABLE ACCESS FULL SCSME PUB_SRVPLATFORMINFO 3 1 79
INLIST ITERATOR
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 2 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 3 1 103
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 24
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
VIEW SCSME SYS_V_DISTRICT 11 1 341
UNION ALL PUSHED PREDICATE
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 3 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 2 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 3 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 2 1
NESTED LOOPS OUTER 5 1 66
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 3 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 2 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
FILTER
NESTED LOOPS
NESTED LOOPS 7 1 87
NESTED LOOPS 5 1 66
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 3 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 2 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 21以前一直用mssql的,这是第一次使用oracle,很多都不懂
HASH UNIQUE 4 3 60
TABLE ACCESS FULL SCSME SYS_USERTYPEROLE 3 3 60
SORT ORDER BY 720073 2571251 3342626300
HASH JOIN 18882 2571251 3342626300
HASH JOIN RIGHT OUTER 1222 63364 77494172
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 5028 120672
HASH JOIN 1212 63364 75973436
VIEW SCSME SYS_V_DISTRICT 34 219 73803
UNION-ALL
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 1 32
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 21 672
HASH JOIN RIGHT OUTER 17 196 12544
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 21 672
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 196 6272
FILTER
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 21
NESTED LOOPS 12 1 85
NESTED LOOPS 10 1 64
TABLE ACCESS FULL SCSME SYS_DISTRICT 8 1 32
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 32
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
HASH JOIN 1177 83617 72077854
VIEW SCSME 410 7425 5613300
UNION-ALL
HASH JOIN 26 257 46517
TABLE ACCESS FULL SCSME PUB_MANAGEMENT 3 261 18270
INLIST ITERATOR
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 22 257 28527
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 6 257
TABLE ACCESS FULL SCSME SYS_SECURITYUSERS 57 48 5328
HASH JOIN RIGHT OUTER 160 6739 1819530
VIEW SCSME PUB_V_ENTERPRISERELA 1 1 40
NESTED LOOPS 1 1 102
NESTED LOOPS 0 1 73
INDEX FULL SCAN SCSME PK_PUB_ENTERPRISERELA 0 1 40
INDEX UNIQUE SCAN SCSME PK_PUB_ENTERPRISEINFO 0 1 33
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 1 1 29
HASH JOIN 158 6739 1549970
TABLE ACCESS FULL SCSME PUB_ENTERPRISEINFO 100 6717 799323
TABLE ACCESS FULL SCSME SYS_SECURITYUSERS 57 12061 1338771
HASH JOIN 158 349 80270
TABLE ACCESS FULL SCSME PUB_ENTERPRISEINFO 100 348 41412
TABLE ACCESS FULL SCSME SYS_SECURITYUSERS 57 12061 1338771
HASH JOIN 8 32 6080
INLIST ITERATOR
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 5 32 3552
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 3 32
TABLE ACCESS FULL SCSME PUB_SRVPLATFORMINFO 3 32 2528
TABLE ACCESS FULL SCSME MTR_RPT_BASE 212 50249 5326394
TABLE ACCESS FULL SCSME MTR_RPT_CELL_E 5282 2038976 157001152这是11G中的
SELECT STATEMENT, GOAL = ALL_ROWS 41 1 3369
HASH UNIQUE 4 2 38
TABLE ACCESS FULL SCSME SYS_USERTYPEROLE 3 2 38
SORT ORDER BY 41 1 3369
NESTED LOOPS 40 1 3369
NESTED LOOPS OUTER 29 1 3028
NESTED LOOPS 27 1 3004
NESTED LOOPS 2 1 2246
TABLE ACCESS FULL SCSME MTR_RPT_CELL_E 2 1 1075
TABLE ACCESS BY INDEX ROWID SCSME MTR_RPT_BASE 0 1 1171
INDEX RANGE SCAN SCSME PK_MTR_RPT_BASE 0 1
VIEW SCSME 25 1 758
UNION ALL PUSHED PREDICATE
HASH JOIN 7 1 172
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 3 1 103
INDEX RANGE SCAN SCSME PK_SYS_SECURITYUSERS 2 1
TABLE ACCESS FULL SCSME PUB_MANAGEMENT 3 1 69
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 3 1 103
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 2 1
TABLE ACCESS BY INDEX ROWID SCSME PUB_SRVORGINFO 1 1 40
INDEX UNIQUE SCAN SCSME PK_PUB_SRVORGINFO 0 1
TABLE ACCESS BY INDEX ROWID SCSME PUB_SRVORGINFO 1 1 43
INDEX UNIQUE SCAN SCSME PK_PUB_SRVORGINFO 0 1
TABLE ACCESS BY INDEX ROWID SCSME PUB_SRVORGINFO 1 1 38
INDEX UNIQUE SCAN SCSME PK_PUB_SRVORGINFO 0 1
NESTED LOOPS OUTER 6 1 258
NESTED LOOPS 4 1 236
TABLE ACCESS BY INDEX ROWID SCSME PUB_ENTERPRISEINFO 2 1 133
INDEX UNIQUE SCAN SCSME PK_PUB_ENTERPRISEINFO 1 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 2 1 103
INDEX RANGE SCAN SCSME PK_SYS_SECURITYUSERS 1 1
VIEW PUSHED PREDICATE SCSME PUB_V_ENTERPRISERELA 2 1 22
NESTED LOOPS 2 1 100
NESTED LOOPS 1 1 73
INDEX UNIQUE SCAN SCSME PK_PUB_ENTERPRISEINFO 1 1 33
INDEX RANGE SCAN SCSME PK_PUB_ENTERPRISERELA 0 1 40
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 1 1 27
TABLE ACCESS BY INDEX ROWID SCSME PUB_SRVORGINFO 1 1 38
INDEX UNIQUE SCAN SCSME PK_PUB_SRVORGINFO 0 1
NESTED LOOPS 4 1 236
TABLE ACCESS BY INDEX ROWID SCSME PUB_ENTERPRISEINFO 2 1 133
INDEX UNIQUE SCAN SCSME PK_PUB_ENTERPRISEINFO 1 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 2 1 103
INDEX RANGE SCAN SCSME PK_SYS_SECURITYUSERS 1 1
NESTED LOOPS
NESTED LOOPS 6 1 182
TABLE ACCESS FULL SCSME PUB_SRVPLATFORMINFO 3 1 79
INLIST ITERATOR
INDEX RANGE SCAN SCSME IDX_SYS_SECURITYUSERS 2 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_SECURITYUSERS 3 1 103
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 24
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
VIEW SCSME SYS_V_DISTRICT 11 1 341
UNION ALL PUSHED PREDICATE
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 3 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 2 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 3 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 2 1
NESTED LOOPS OUTER 5 1 66
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 3 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 2 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
FILTER
NESTED LOOPS
NESTED LOOPS 7 1 87
NESTED LOOPS 5 1 66
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 3 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 2 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 33
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
INDEX RANGE SCAN SCSME PK_SYS_DISTRICT 1 1
TABLE ACCESS BY INDEX ROWID SCSME SYS_DISTRICT 2 1 21以前一直用mssql的,这是第一次使用oracle,很多都不懂
执行计划不同,重新收集 下 11g库 里面 涉及到表的统计信息 ,再查下看看。
看下优化器模式