ITPub博客

首页 > Linux操作系统 > Linux操作系统 > sql语句分析时间远大于执行时间使用绑定变量

sql语句分析时间远大于执行时间使用绑定变量

原创 Linux操作系统 作者:wokeyi1314 时间:2010-07-06 14:10:54 0 删除 编辑

当执行如下语句时,优化器选择全表扫描:
hao@TEST> select count(pad) from t where id < 990;

COUNT(PAD)
----------
       989


Execution Plan
----------------------------------------------------------
Plan hash value: 1842905362

---------------------------------------------------------------------------
| Id  | Operation          | Name | Rows  | Bytes | Cost (%CPU)| Time     |
---------------------------------------------------------------------------
|   0 | SELECT STATEMENT   |      |     1 |    42 |     3   (0)| 00:00:01 |
|   1 |  SORT AGGREGATE    |      |     1 |    42 |            |          |
|*  2 |   TABLE ACCESS FULL| T    |   989 | 41538 |     3   (0)| 00:00:01 |

hao@TEST> var n number
hao@TEST> execute :n := 990;

PL/SQL procedure successfully completed.

hao@TEST> select count(pad) from t where id < :n;

COUNT(PAD)
----------
       989


Execution Plan
----------------------------------------------------------
Plan hash value: 2536185945

-------------------------------------------------------------------------------------
| Id  | Operation                    | Name | Rows  | Bytes | Cost (%CPU)| Time     |
-------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT             |      |     1 |    42 |     2   (0)| 00:00:01 |
|   1 |  SORT AGGREGATE              |      |     1 |    42 |            |          |
|   2 |   TABLE ACCESS BY INDEX ROWID| T    |    50 |  2100 |     2   (0)| 00:00:01 |
|*  3 |    INDEX RANGE SCAN          | T_ID |     9 |       |     2   (0)| 00:00:01 |
一般来说,OLTP环境中适合使用绑定变量,因为系统中的sql大部分是返回结果集较小的或者是插入语句等等,这类语句执行时间一般小于分析时间,时间花费主要在分析上,如果使用绑定变量,可以有效的降低response time。而对于返回结果集较大的sql语句,那么它的分析时间远小于执行时间,在这个时候使用绑定变量不太适合,更有可能导致错误的执行计划而使系统崩溃。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22253646/viewspace-667336/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 启用auto trace功能
下一篇: 查找无效对象
请登录后发表评论 登录
全部评论

注册时间:2010-02-26

  • 博文量
    70
  • 访问量
    157547