如何查看Oracle中sql语句的执行时间

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何查看Oracle中sql语句的执行时间相关的知识,希望对你有一定的参考价值。

  通过Oracle执行计划可以看到SQL的执行时间。
  EXPLAIN PLAN FOR
  SELECT * FROM table;
  SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
  SQL>set timing on --显示执行时间
  SQL>set autorace on ?C显示执行计划
  SQL>set autorace on ?C显示执行计划
  SQL>set autotrace traceonly ?C只显示执行计划即不显示查询出来的数据
  设置完毕后执行SQL语句就会显示执行时间。
参考技术A 如果用 plsqldeveloper执行的话,在sql窗口的下面的提示框中有 消耗时间的 显示。

如果再sqlplus中执行的话,
set timing on;
然后再执行你想要的sql语句.本回答被提问者和网友采纳
参考技术B 如何查看Oracle中sql语句的执行时间
: 第三方工具pl/sql的最下一行是执行时间 如果是sqlplus那么就先set timing on,然后执行语句,执行完毕后就能看到执行时间。

PL_sql如何执行oracle存储过程

create or replace procedure area
begin
select * from ods_area;
end
execute area;--执行

参考技术A 要成功执行这个存储过程,你需要注意几点:
1.select * from ods_area; 不能直接在pl/sql 中作为语句执行。
应该用 select 字段 into plsql变量 from 表名;
的形式来获取表中的数据,保存到plsql变量中。

2. 存储过程的语法格式为:
create or replace procedure area
is
--变量声明;
begin
--过程主体;
end area;
3. 如果存储过程代码无误,可以通过 "/" 来执行代码,编译存储过程。
4.通过exec 或 execute 来调用编译后的存储过程。

例如:

-- 创建procedure:
create or replace procedure area
is
num number ;
v_areaRecord dual%ROWTYPE;
begin
--例子1
select * into v_areaRecord from dual;
--例子2
select 12345 into num from dual;
end area;
/
-- 通过 / 执行;

--调用
exec area;本回答被提问者和网友采纳
参考技术B PLSQL Developer里面直接就有撒,用法如下:
declare
-- Non-scalar parameters require additional processing
env sys.odcienv;
begin
-- Call the procedure
sys.odcienvdump(env => env);
end;
参考技术C 在sqlplus中执行方法如下
1.(重要)在sqlplus中执行如下命令(只有这样才可以看到输出结果):
set serverout on;
2.创建
3.执行(1,2顺序可以调换)

在plsql developer中就简单了,可以在左侧列表中找到procedure,找到相应存储过程,右键,。。。等等方法

以上是关于如何查看Oracle中sql语句的执行时间的主要内容,如果未能解决你的问题,请参考以下文章

如何查看SQL Server2000执行过的SQL语句

如何查看SqlServer查询语句的执行效率

如何查看oracle某用户近期执行的SQL

如何查看mysql sql执行时间

oracle 中怎样查看以前执行过的SQL语句?

oracle查看历史session