SQL - How to select a row having a column with max value

前端 未结 9 820
悲&欢浪女
悲&欢浪女 2020-11-29 02:38
date                 value

18/5/2010, 1 pm        40
18/5/2010, 2 pm        20
18/5/2010, 3 pm        60
18/5/2010, 4 pm        30
18/5/2010, 5 pm        60
18/5/20         


        
9条回答
  •  甜味超标
    2020-11-29 02:50

    Keywords like TOP, LIMIT, ROWNUM, ...etc are database dependent. Please read this article for more information.

    http://en.wikipedia.org/wiki/Select_(SQL)#Result_limits

    Oracle: ROWNUM could be used.

    select * from (select * from table 
    order by value desc, date_column) 
    where rownum = 1;
    

    Answering the question more specifically:

    select high_val, my_key
    from (select high_val, my_key
          from mytable
          where something = 'avalue'
          order by high_val desc)
    where rownum <= 1
    

提交回复
热议问题