同时查询最大最小值的效率问题(二)

2014-11-24 11:32:45 · 作者: · 浏览: 1
Plan hash value: 3784617757
------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 9 | 1661 (1)| 00:00:20 |
| 1 | SORT AGGREGATE | | 1 | 9 | | |
|* 2 | INDEX FAST FULL SCAN| USER_OBJECTS_CREATE_DT | 1600K| 13M| 1661 (1)| 00:00:20 |
------------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
2 - filter("A"."CREATED" IS NOT NULL)
Note
-----
- dynamic sampling used for this statement
Statistics
----------------------------------------------------------
5 recursive calls
0 db block gets
8647 consistent gets
267 physical reads
0 redo size
481 bytes sent via SQL*Net to client
385 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed
--既然放在一起查询不行,我们将两个函数分开来做:
--分别让其走索引的全表扫描:
--执行时间:Elapsed: 00:00:00.10
[sql]
SQL> SELECT MIN, MAX
2 FROM (SELECT MIN(created) AS MIN FROM user_objects_tmp) a,
3 (SELECT MAX(created) AS MAX FROM user_objects_tmp) b;
Elapsed: 00:00:00.10
Execution Plan
----------------------------------------------------------
Plan hash value: 4210122108
-------------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
-------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 18 | 3437 (4)| 00:00:42 |
| 1 | NESTED LOOPS | | 1 | 18 | 3437 (4)| 00:00:42 |
| 2 | VIEW | | 1 | 9 | 1718 (4)| 00:00:21 |
| 3 | SORT AGGREGATE | | 1 | 9 | | |
| 4 | INDEX FULL SCAN (MIN/MAX)| USER_OBJECTS_CREATE_DT | 1600K| 13M| | |
| 5 | VIEW | | 1 | 9 | 1718 (4)| 00:00:21 |
| 6 | SORT AGGREGATE | | 1 | 9 | | |
| 7 | INDEX FULL SCAN (MIN/MAX)| USER_OBJECTS_CREATE_DT | 1600K| 13M| | |
-------------------------------------------------------------------------------------------------------
Note
-----
- dynamic sampling used for this statement
Statistics
----------------------------------------------------------
195 recursive calls
0 db block gets
159 consistent gets
72 physical reads
0 redo size
472 bytes sent via SQL*Net to client
385 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
5 sorts (memory)
0 sorts (disk)