表D,结构如下:
id varchar2(10), 
name varchar2(20), 
project varchar2(10),
year number(4,0),
value number(10,2)
   需取出不同project的最大value,及其对应年份

解决方案 »

  1.   

    select * from d where rownum=1 order by project desc
      

  2.   

    不是这样的,表中可能存在相同project不同value的记录,要查的就是把不同的project查出来,而具有相同project的则取出value最大的一条记录!
      

  3.   

    select project ,max(value) from d 
    group by project 
      

  4.   

    select * from table where value in(select max(value) from table group by project) order by project
      

  5.   

    追加对应年份:
    select distinct
       d1.project ,d1.value,d1.year
    from d d1,(select project ,max(value) as m_v  from d 
               group by project )d2
    where 
     d1.value=d1.value
    and d1.value=d2.m_v