求教一个问题,标题长长的~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~我测试下面这sql语句时发现:第一次:select co
求教一个问题,标题长长的~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
我测试下面这sql语句时发现:
第一次:
select count(*)
from temperature t
where t.t_checktime >=
to_date('2013-03-21 00:00:00', 'yyyy-mm-dd HH24:MI:SS')
and t.t_checktime <=
to_date('2013-04-10 23:59:59', 'yyyy-mm-dd HH24:MI:SS');
COUNT(*)
----------
743360
执行计划
----------------------------------------------------------
Plan hash value: 4082582504
--------------------------------------------------------------------------------
-------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Tim
e |
--------------------------------------------------------------------------------
-------
| 0 | SELECT STATEMENT | | 1 | 7 | 3220 (1)| 00:
00:39 |
| 1 | SORT AGGREGATE | | 1 | 7 | |
|
|* 2 | INDEX RANGE SCAN| IDX_TEMPERATURE_2 | 76271 | 521K| 3220 (1)| 00:
00:39 |
--------------------------------------------------------------------------------
-------
第二次:
select count(*)
from temperature t
where t.t_checktime >=
to_date('2013-03-21 00:00:00', 'yyyy-mm-dd HH24:MI:SS')
and t.t_checktime <=
to_date('2013-04-11 23:59:59', 'yyyy-mm-dd HH24:MI:SS');
COUNT(*)
----------
777600
执行计划
----------------------------------------------------------
Plan hash value: 2391986960
--------------------------------------------------------------------------------
--
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time
|
--------------------------------------------------------------------------------
--
| 0 | SELECT STATEMENT | | 1 | 7 | 3367 (1)| 00:00:41
|
| 1 | SORT AGGREGATE | | 1 | 7 | |
|
|* 2 | TABLE ACCESS FULL| TEMPERATURE | 79903 | 546K| 3367 (1)| 00:00:41
|
--------------------------------------------------------------------------------
--
第一次查询速度瞬间完成,第二次就等了将近十秒,查询条件只是差了一天而已,为什么会这样的?有人能告诉我一下吗?谢谢了~ oralce?sql?执行计划 sql 执行计划
[解决办法]
多作几次对比看下
------解决方案--------------------
多了几万数据 是不是数据库正在做其他操作 导致并行效率受影响了
[解决办法]
第二次就等了将近十秒?同环境下?还是同时有别人在操作数据库
[解决办法]
那要是再多查询一天呢 再多几万数据 要多久...
按道理来说 应该是第一次加载会稍微慢点
