HERE YOU ARE!

[复制链接]
查看11 | 回复2 | 2006-4-17 13:46:34 | 显示全部楼层 |阅读模式
QUESTION:
How to use the Explain Plan command to show a statement is processed?
And How to use SQL*PLUS Autotrace to run statements and display execution plans and statistics?
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
SQL> show user
USER 为"SYS"
SQL> delete from plan_table;
已删除3行。
SQL> commit;
提交完成。
(1)
SQL> explain plan for
2select count(*) from hr.employees;
已解释。

1select lpad(' ',4*(level-2))||operation||' '||options||' '||
2object_name "execution_plan"
3from plan_table
4start with id=0
5* connect by prior id=parent_id
SQL> /
execution_plan
--------------------------------------------------------------------------------
SELECT STATEMENT
SORT AGGREGATE
INDEX FULL SCAN EMP_EMAIL_UK
(2)
SQL> set autotrace on;
SQL> select count(*) from hr.employees;
COUNT(*)
----------
107

Execution Plan
----------------------------------------------------------
0 !SELECT STATEMENT Optimizer=CHOOSE (Cost=1 Card=1)
!
10 SORT (AGGREGATE)
!
21 INDEX (FULL SCAN) OF 'EMP_EMAIL_UK' (UNIQUE) (Cost=1 Car !

d=107)


Statistics
----------------------------------------------------------

0recursive calls

0db block gets

0consistent gets

0physical reads

0redo size

0bytes sent via SQL*Net to client

0bytes received via SQL*Net from client

0SQL*Net roundtrips to/from client

0sorts (memory)

0sorts (disk)

1rows processed
SQL>
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
IF add Set will better
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行