读书人

从一个查询结果中再度查询结果非常的

发布时间: 2013-12-20 00:23:10 作者: rapoo

从一个查询结果中再次查询,结果非常的卡
我是个菜鸟,才学数据库,贴出代码,求大神帮助啊!!!
SELECT count(*) from(
SELECT EVALUATIONINFO.*,SURVEYEVALUATION.EVALUATIONPERSONID,SURVEYEVALUATION.EVALUATIONIP,
SURVEYEVALUATION.REQUESTTIME,SURVEYEVALUATION.FINISHTIME,ROWNUM rn
from EVALUATIONINFO join SURVEYEVALUATION
on SURVEYEVALUATION.ID=EVALUATIONINFO.SURVEYEVALUATIONID
where SURVEYEVALUATIONId in
(
SELECT ID from SURVEYEVALUATION where QUESTIONNAIREID='20131216130957'
AND EVALUATIONPERSONID IN(SELECT ID from STU_BASEINFO))
and TITLENO='3' and rownum<=10)

当执行红色的代码的时候速度很快,就0.19S左右,但是如果全部执行的话,需要5分钟左右,求解为什么会这样啊!
[解决办法]
查你的高水位,你的表是否存在过大量数据,后来delete掉了,导致你的全表扫描非常慢。
如果是可以使用导出,删除表,然后导入。
也可以alter table table_name move tablespace tablespace_name;

读书人网 >oracle

热点推荐