2

MyTable という次のテーブルがあります

    First     Second     Third    Fourth
    1         Ab         Cd       2.3
    1         Cq         Fe       3.4
    2         Dr         Dh       1.2
    3         Bb         Qd       9.8
   ..........ETC.....................

Fourth最大の列値を持つ First でグループ化された行を選択するにはどうすればよいですか。したがって、結果が次のクエリになります。

    First     Second     Third    Fourth
    1         Cq         Fe       3.4
    2         Dr         Dh       1.2
    3         Bb         Qd       9.8
4

3 に答える 3

5

これを試して:

select * 
from   MyTable T
join      (Select First,max(Fourth) as Fourth
          from MyTable
          group by First)a
on    T.First=a.First
and   T.Fourth=a.Fourth


SQL フィドルのデモ

于 2012-10-25T08:00:25.283 に答える
2

この解決策を試してください:

select MT.First, MT.Second, MT.Third, MT.Fourth 
from MyTable MT
join ( select first, max(Fourth) as Fourth
       from MyTable
       group by first
     ) T on T.first = MT.First
         and T.Fourth = MT.Fourth

SQL フィドルのデモ

于 2012-10-25T08:00:52.400 に答える
0
select
    B.*
from (select T.First, max(T.Fourth) as Fourth from Table as T) as A
    inner join Table as B on B.First = B.First and B.Fourth = A.Fourth
于 2012-10-25T08:03:57.203 に答える