1、没有订单数据时中止任务:
SELECT 1 FROM dual WHERE EXISTS(SELECT 1 FROM order WHERE order_date = trunc(sysdate));
当天没有订单时总是返回空结果集(无记录),任务中止。
2、工作日早上9点到下午17点间每小时执行一次,12点和17点时始终发送,其它时间如果订单数超过100就发送:
(1)设置执行计划:

(2)设置先决条件:
SELECT 1 FROM dual WHERE (SELECT COUNT(1) FROM order WHERE order_date = trunc(sysdate)) >= 100 OR to_char(sysdate,'hh24') IN('12','17');
任务在周一到周五9点到17点每小时启动一次。“开始时间”很重要,以后每次执行都以这个时间为准来确定执行时间。
博客介绍了SQL任务执行的相关内容。一是当没有订单数据时中止任务,通过特定查询语句判断,当天无订单则返回空结果集。二是工作日早上9点到下午17点间每小时执行一次任务,12点和17点始终发送,其他时间订单数超100才发送,还给出了设置执行计划和先决条件的查询语句。
1172

被折叠的 条评论
为什么被折叠?



