一组数据存在于表中,有个时间字段,记录了数据插入的时间。正常情况下,每10分钟就应该插入一条数据。但有的时候由于系统故障,造成在某个该插入数据的时刻没有插入数据。如何用SQL确定数据缺失的时刻。谢谢
解决方案 »
- Oracle同一张表内使用In语句查询,多层嵌套如何进行优化?
- oracle的查询语句,在线等,急!!
- oracle 9i安装后系统服务里面怎么没有management server
- 如何使用外键,需要添加额外的字段主键吗?
- 怎么查看用户名和密码?
- 高分请教,如何在PB6.5中存取ORACLE的BLOB字段?急急急...
- 表名称要改,怎么不丢数据下完成?
- 对昨天一个同仁的问题的修改后的问题,在线等待
- 数据链路同义词奇怪的问题 (在线等待) 请各位高手快快帮忙!!!!!!!!!!
- PLsql导入表的时候 user sql plus选项是空的
- oracle 9i 中用occi连接数据库的问题
- OCI 的问题,高手请进,急
如果是的话,那就和这个时间来判断!通过分析函数LEAD来实现!
前面的时间减去后面的时间>10分钟就判断没有插入数据!
相邻招聘日期差30天的例子:
SELECT *
FROM (SELECT S.*, LEAD(S.HIREDATE) OVER(ORDER BY HIREDATE) - S.HIREDATE CC
FROM SCOTT.EMP S)
WHERE CC >= 30;
SQL> select id,to_char(indate,'hh24:mi:ss') from tbl; ID TO_CHAR(INDATE,'HH24:MI:SS')
--------------------------------------- ----------------------------
1 10:00:00
2 10:10:00
3 10:20:00
4 10:40:00
5 10:50:00
6 11:00:00
SQL> select id,(indate-LAG(indate,1,null)over(order by indate))*1440 rm from tbl; ID RM
--------------------------------------- ----------
1
2 10
3 10
4 20
5 10
6 106 rows selected