当前位置: 代码迷 >> Oracle技术 >> *sql语句求简单化,求速度*
  详细解决方案

*sql语句求简单化,求速度*

热度:106   发布时间:2016-04-24 08:13:06.0
*****************sql语句求简化,求速度****************
本帖最后由 reyreoitoo 于 2013-12-16 11:37:42 编辑
 select loopid,timestamp from onlinetrafficdata
 where max(to_char(timestamp,'yyyy-mm-dd hh24:mi') in (select max(to_char(timestamp,'yyyy-mm-dd hh24:mi'))From onlinetrafficdata);  
  

------解决方案--------------------
略改

select * from 
(select loopid,timestamp,rank() over (order by to_char(timestamp,'yyyy-mm-dd hh24:mi') desc ) as rnk 
from onlinetrafficdata ) 
where rnk=1

------解决方案--------------------
select loopid,timestamp from onlinetrafficdata a where not exists (select 1 from onlinetrafficdata where timestamp > a.timestamp)
这样会快点不,至于按分钟还是还是按秒可以先格式化timestamp
------解决方案--------------------
建个函数索引吧
create  index onlinetrafficdata_index1  on  onlinetrafficdata( to_char(timestamp, 'yyyy-mm-dd hh24:mi'));
  相关解决方案