【发布时间】:2018-03-18 16:26:11
【问题描述】:
如何使用Oracle中V$TRANSACTION表的START_TIME列查找从当前时间开始活跃超过30分钟的事务的名称?
【问题讨论】:
-
您在寻找 sys.dm_exec_requests:docs.microsoft.com/en-us/sql/relational-databases/…
-
我正在使用 Oracle
如何使用Oracle中V$TRANSACTION表的START_TIME列查找从当前时间开始活跃超过30分钟的事务的名称?
【问题讨论】:
我们可以在 Oracle 中对日期进行算术运算。 Sysdate 是当前日期时间。一天有48个半小时。所以:
select *
from V$TRANSACTION
where to_date(start_time, 'mm/dd/yyyy hh24:mi:ss') <= sysdate - (1/48)
嗯,V$TRANSACTION.start_time 使用与 sysdate 不同的格式掩码似乎有点奇怪。无论如何,您可以通过显式日期转换来避免 ORA-01843 错误。
【讨论】: