u010463375 2013-07-02 04:57 采纳率: 50%
浏览 5766

求帮助,oracle数据库,查询出每个最新时间的那一条数据

select p.* from (select rownum as 序号 ,n.* from (select sitename as 站点名称, RecordTime as 记录时间 ,decode(avg(case item when 211 then value else null end),0,'0.00000',trim(to_char(avg(case item when 211 then value else null end),'99999999999990.99999'))) "SO2(mg/m3)" from(select s.sitename,m.* from air_temphourdata m left join site s on m.sitecode=s.sitecode where m.SiteCode in ('34656-31102001','34656-31102006'))group by sitename,Recordtime having to_char(Recordtime,'yyyymmddhhmmss')=MAX(to_char(Recordtime,'yyyymmddhhmmss')) order by RecordTime desc ) n )p where p.序号 between 1 and 15 只查询出每个站点最大时间的那一条

  • 写回答

1条回答 默认 最新

  • com_jia 2018-03-16 07:28
    关注

    很简单的问题,使用窗口函数解决~
    select 站点名称,first_value("SO2(mg/m3)") over(partition by 站点名称 order by 记录时间 desc)
    from (
    select sitename as 站点名称,
    RecordTime as 记录时间,
    decode(avg(case item
    when 211 then
    value
    else
    null
    end),
    0,
    '0.00000',
    trim(to_char(avg(case item
    when 211 then
    value
    else
    null
    end),
    '99999999999990.99999'))) "SO2(mg/m3)"
    from (select s.sitename, m.*
    from air_temphourdata m
    left join site s
    on m.sitecode = s.sitecode
    where m.SiteCode in ('34656-31102001', '34656-31102006'))) n

    评论

报告相同问题?

悬赏问题

  • ¥15 运筹学中在线排序的时间在线排序的在线LPT算法
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 lammps拉伸应力应变曲线分析
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试,帮帮忙吧