有一张,每30秒记录一次一组设备(100台左右)当前的状态,能够保存一月设备的数据。请问我想从中取出离当前时间最近的这组设备的状态,应该怎么取?表中设备号,状态,记录时间等字段。
解决方案 »
- 本人初学oracle 不清楚 sequser.table_seq.nextval
- Oracle10gr2,只能插入两个中文啊!!!错误ORA-01756
- oracle对大表中数据更做新
- 急啊,谁能帮帮我,XML解析问题.
- oracle中的package的存储的游标的效率问题
- 今天学习Oracle遇到一个奇怪的问题:
- 这个存储过程怎么写,关于字符串的截取
- 初学ORACLE,有使用SQL SERVER的基础,请帮忙介绍基本学习ORACLE的书籍
- 急急!谢谢。oracle里,怎样将数据库里选出的一列值一次性付给一个数组?
- 数 据 类 型 number(p,s)怎 么 回 事 ? 解 决 立 即 给 分 ! ! ! !
- 各位大虾好,帮小弟写个sql哈!
- pro*c编程 sql语句的问题
(
select t.*,row_number(partition by 设备号 order by 记录时间) rn from t
)
where rn=1
(
select t.*,row_number(partition by 设备号 order by 记录时间 desc) rn from t
)
where rn=1
ora-00907:缺失右括号
ora-00907:缺失右括号手打的,sorry
select * from
(
select t.*,row_number() over(partition by 设备号 order by 记录时间 desc) rn from t
)
where rn=1
ora-00907:缺失右括号手打的,sorry
select * from
(
select t.*,row_number() over(partition by 设备号 order by 记录时间 desc) rn from t
)
where rn=1谢谢,
比我写的效率高很多,3.312秒执行完。我那个5秒多。
想要个2秒之内完成不知道有没有
not exists(select 1 from t b where b.设备号=a.设备号 and b.记录时间<a.记录时间)
或者
select * from t a where (a.设备号,a.记录时间) in (select 设备号,max(记录时间) from t)有(设备号,记录时间)索引的话,应该很快