Oracle10g 要在循环中执行的SQL查询

Oracle10g 要在循环中执行的SQL查询,oracle10g,Oracle10g,我需要你的帮助来回答以下问题 SELECT SQL_ID, SNAP_ID, EXECUTIONS_TOTAL, EXECUTIONS_DELTA, CPU_TIME_TOTAL, CPU_TIME_DELTA, ELAPSED_TIME_TOTAL, ELAPSED_TIME_DELTA from WRH$_SQLSTAT where SQL_ID='807mzfr04qt1c' and SNAP_ID in (19507,19508); 我必须每小时执行一次上述查询以

我需要你的帮助来回答以下问题

SELECT
 SQL_ID,
 SNAP_ID,
 EXECUTIONS_TOTAL,
 EXECUTIONS_DELTA,
 CPU_TIME_TOTAL,
 CPU_TIME_DELTA,
 ELAPSED_TIME_TOTAL,
 ELAPSED_TIME_DELTA
from
 WRH$_SQLSTAT
where
 SQL_ID='807mzfr04qt1c' and
 SNAP_ID in (19507,19508);

我必须每小时执行一次上述查询以获得结果(snap_id值在下一个小时从19507-19508更改为19508-19509)。让我们说,从19507年开始到19530年结束的整整一天,begin snap id。我需要帮助编写一个脚本,该脚本应该从开始id(19507)开始执行,并将其与下一个id(19508)进行比较,下一个id(19508)成为开始id,依此类推,然后执行,直到达到结束id(19530)。

您可以使用DBMS\u调度程序。适用于您的oracle 10g版本。我有点困惑,你在哪里尝试在SQL或ORACLE中实现它,因为你的问题在ORACLE 10g中被标记,并且你提到了你的SQL问题

但是,如果您使用的是Oracle10gu,则可以通过使用DBMS\u调度程序来实现,如果您使用的是其他版本的v7.3.4到9iOracle,请使用DBMS\u作业来调度任务

如果您使用的是MS SQL Server我们可以通过创建计划作业来实现这一点。在SQL Management Studio中,导航到服务器,然后展开SQL server代理项,最后是要查看、编辑和添加计划作业的作业文件夹