2

私はテーブルを持っています:

| P_id | Month |  Year  |  Name  |
   624     09     2009    Test1
   600     10     2010    Test2
   624     10     2010    Test6
   600     09     2011    Test7
  1. P_idテーブルを降順、Year昇順、昇順でMonth並べ替えたい

  2. 順序に基づいて、それぞれの最後のレコードが必要ですP_id

ステップ 1 の実行後:

| P_id | Month |  Year  |  Name  |
  624     09      2009    Test1
  624     10      2010    Test6
  600     10      2010    Test2
  600     09      2011    Test7

望ましい出力:

| P_id | Month |  Year  |  Name  |
   624     10     2010    Test6
   600     09     2011    Test7
4

1 に答える 1

3

使用できますrow_number

select  *
from    (
        select  row_number() over (
                  partition by p_id
                  order by year desc, month desc) as rn
        ,       *
        from    YourTable
        ) as SubQueryAlias
where   rn = 1

row_numberで直接使用できないため、サブクエリが必要です。where

于 2012-05-20T19:11:51.330 に答える