17,086
社区成员
发帖
与我相关
我的任务
分享
select count(1) from table where ---要十几秒
--这个要走排序,时间长
--执行计划就是看看你的语句怎么执行的
scott@YPCOST> set autot on exp;--在sqlplus里可以通过这个自动输出执行计划
scott@YPCOST> select * from dept;
DEPTNO DNAME LOC
---------- -------------- -------------
90 dfd dfd
60 suzhou we
70 suzhou
50 NANCHANG
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
已选择8行。
执行计划
----------------------------------------------------------
Plan hash value: 3383998547
--------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
--------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 8 | 128 | 3 (0)| 00:00:01 |
| 1 | TABLE ACCESS FULL| DEPT | 8 | 128 | 3 (0)| 00:00:01 |
--------------------------------------------------------------------------
scott@YPCOST> select count(*) from dept;
COUNT(*)
----------
8
执行计划
----------------------------------------------------------
Plan hash value: 3380918908
-------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
-------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 1 (0)| 00:00:01 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | INDEX FULL SCAN| BIN$8mPMMewIQa6BxCHkeZP6Wg==$0 | 8 | 1 (0)| 00:00:01 |
-------------------------------------------------------------------------------------------