0

以下はサンプルデータです。

Op_ID マニュアル TT
------------------
1 0 32
1 1 38.4
2 0 4.56
2 1 7.5
55 1 50
55 1 30
  • ケース 1: Op_id と手動列を確認する必要があります。手動列が 0 の場合は、tt 値 = 32 を取得し、以下のレコードを無視する必要があります。同様に、他のレコードを確認する必要があります。つまり、op_id=2 および manual=0 で、tt=4.56 を取得する必要があります。
  • ケース 2: 両方のレコードが manual =1 の場合、tt の最大数、つまり tt=50 を取得する必要があります (op_id=55 の場合)。
だから私は以下のような出力が必要です。
Op_ID マニュアル TT
------------------
1 0 32
2 0 4.56
55 1 50
4

1 に答える 1

1
select opid, manual, tt
from (
  select *, row_number() over (partition by opid order by manual, tt desc) rn
  from yourtable ) v
where rn = 1
于 2013-10-02T05:03:12.273 に答える