次のような表がある場合、そのシリアル番号とそのcontract_typeとそれ以降の有効期限を選択するにはどうすればよいですか?それはこのクエリ簡単になり場合有効期限が後である選択行
serial_number contract_type expiry_date abc001 SPRT 2011-05-31 00:00:00 abc001 HOMD 2013-05-31 00:00:00 abc002 SPRT 2012-10-14 00:00:00 abc002 HOMD 2011-10-14 00:00:00 abc003 SPRT 2014-05-31 00:00:00 abc003 HOMD 2011-05-31 00:00:00 ................
1)私は仮定を作ることができます。各シリアル値(SN)は、テーブルに2つ、2つだけcontract_typesを持つことになります。
2)実際の状況:SNとcontract_typeがプライマリキーで、contract_type 'SPRT'と 'HOMD'のみを探しています。
私が必要とする最終的な結果セットは次のようになりますのみ 'SPRT' または 'HOMD' contract_type
と
SN SNが 'SPRT' と 'HOMD' の両方を持っている場合、私は必要(有効期限が同じで、1つだけを選択した場合)
誰でもクエリを出すことができますか?実際のケースは1つのクエリでは複雑すぎるかもしれませんが、最初の単純化されたケースではどうでしょうか。
私はここで何かが不足している可能性がありますが、あなたはexpiry_dateと何を比較していますか?あなたは「後でexpiry_date」と言っています。 –
SNに「SPRT」と「HOMD」の両方がある場合は、SNのレコードが期限切れになっている必要があります。あなたの素早い応答のために他のレコード – user268451