【发布时间】:2020-03-28 16:39:59
【问题描述】:
环境
带有 OracleXE11g 的虚拟机(我使用的是SQL Plus)
说明
我需要得到 1 个查询(并且没有 pl/SQL):
- 在服务器中执行的最后一个
SQL语句 - 该语句自首次加载到共享池后执行的次数
- 执行同一条语句所花费的 CPU 时间
总而言之,这是我想出来的查询
SELECT sq.SQL_TEXT ,sq.EXECUTIONS, sq.CPU_TIME
FROM gv$sql sq;
当然,这个查询是有效的,但是它显示了所有的寄存器。我需要获取倒数第二个,因为最后一个在执行时将是同一个查询。
我正在努力实现的目标
如何获得该查询的倒数第二个寄存器?
【问题讨论】:
-
对 11g 不是很熟悉,但是没有可以与窗口函数一起使用的日期字段吗?
-
这是家庭作业吗?还是真正的问题?我很难想象这些信息对您有什么用处,因为您找到的 SQL 语句几乎肯定来自 Oracle 在后台运行的后台进程。
-
它首先需要一个 ORDER BY,然后使用 OFFSET 子句研究 FETCH NEXT...
-
你说得对,这是家庭作业,所以没必要在真实环境中实际使用。我们只是在了解用户、权限、角色...等@JustinCave
-
我尝试了 fetch 语句,但不适用于 11g 版本。我发现它是在 12c 版本@DRapp 中首次引入的
标签: sql oracle select oracle11g sqlplus