テーブルは次のようになります。1つの列に最大値を持つ行を選択するためのSQLクエリの作成方法
Id | Name | Ref | Date | From
10 | Ant | 100 | 2017-02-02 | David
10 | Ant | 300 | 2016-01-01 | David
2 | Cat | 90 | 2017-09-09 | David
2 | Cat | 500 | 2016-02-03 | David
3 | Bird | 150 | 2017-06-28 | David
これは私が望む結果です。
Id | Name | Ref | Date | From
3 | Bird | 150 | 2017-06-28 | David
2 | Cat | 500 | 2016-02-03 | David
10 | Ant | 300 | 2016-01-01 | David
ターゲットは、最も高いRef per Idであり、Order Date descで注文されます。
pl/sqlを使用してSQLクエリを作成する方法について教えてください。
あなたがするように求められたびに「最高」または「最低」に関する問題を解決するには、重複(ネクタイ)について考える必要があります。 Antの両方の行がRef = 300の場合はどうなりますか?どちらが「最高」ですか?結果に両方の行を含める必要がありますか?または、最新の日付のものだけを取る?または、Ref列に重複がありませんか?その後、日付で結果を注文するとき - 2つの日付が等しい場合、どのようにネクタイを壊すのですか? – mathguy