分组中取最大的值(max)  并取这个最大的值的ID 一起显示出来
select max(V4MAXSPEED),ID from t_anerecord group by atid 
在这个基础上怎么改呢 请思路

解决方案 »

  1.   

    select max(V4MAXSPEED) over(partition by atid), ID from t_anerecord
      

  2.   

    select ID,V4MAXSPEED from (
    select row_number()over(partition by atid order by V4MAXSPEED desc) rn, 
    ID,
    V4MAXSPEED  
    from t_anerecord )
    where rn=1
     
      

  3.   

    select max(V4MAXSPEED) over(partition by atid order by V4MAXSPEED desc), ID from t_anerecord group by atid
    为什么不是 group by 语句呢  如何在分组的基础上 找出最大值和 该最大值这行的信息呢 
      

  4.   


     partition by也是分组  这个相当于group by  2L的结果应该是对的  可以参考下  分组倒序排列取第一个 就是每组的最大值
      

  5.   

    “分组中取最大的值(max) 并取这个最大的值的ID 一起显示出来”理解起来是要找t_anerecord 中最大值的那行记录啊,
    select V4MAXSPEED, id
      from (select V4MAXSPEED, ID from t_anerecord order by V4MAXSPEED desc)
     where rownum = 1