oracle查询第一次慢,第二次快?

SELECTrownumid,p.idASpositionId,p.lat,p.lng,p.gpsTime,p.address,p.speed,p.carStatus,p... SELECT rownum id,p.id AS positionId,p.lat,p.lng,p.gpsTime,
p.address,p.speed,p.carStatus,p.isAlarm,p.car_id as carId,c.carMark,c.carName
FROM Position p INNER JOIN Car c ON p.car_id=c.id WHERE p.car_Id = '1780'
order by p.gpsTime

因为需要我设置两个索引p.gpsTime和positionId,但为什么第一次查询的时侯还是很慢,再执行一遍就会很快呢?
但是该怎么解决这个问题呢?我需要的是第一次就快。
展开
 我来答
狼之野
2009-04-09 · 超过11用户采纳过TA的回答
知道答主
回答量:64
采纳率:0%
帮助的人:42.9万
展开全部
你第一次的查询结果已经在内存中存在了,你第二次执行的时候会自动先查询缓存
滕昂熙6u
2009-04-09 · TA获得超过164个赞
知道小有建树答主
回答量:420
采纳率:0%
帮助的人:217万
展开全部
因为数据已经存在内存中了执行完一次以后,我猜的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
丛云阙凯泽
2019-11-28 · TA获得超过1055个赞
知道小有建树答主
回答量:1643
采纳率:100%
帮助的人:7.4万
展开全部
看笑亏宽亮你的分页语法是这么碰巧神写的?
推荐这么写:
select * from ( select a.*, rownum rn from
(
select count(*) over() datacnt,ta.* from ta
)
) a where rownum <= 100
) where rn >= 75
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
267025676
2009-04-09 · TA获得超过260个赞
知道答主
回答量:190
采纳率:0%
帮助的人:156万
展开全部
1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f2a99ee
2009-04-09 · TA获得超过175个赞
知道小有建树答主
回答量:283
采纳率:0%
帮助的人:169万
展开全部
因为第一次你的索引还没起作用 后面应该都会快了 不知道对不对 索引本质就是预排序
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式