TableAというテーブルがあり、ColA列に次のデータがあります
ColA
100
60
50
30
10
@colAというパラメータがあります
1行だけを選択したい。基準は、ColAの値が@colAと一致する場合、その行が返されるというものです。一致するものが見つからない場合は、ColAと@colAの差が最も小さい行を探します。
たとえば、@ colA = 50の場合、50の行が返されます。@colA = 58の場合、60の行が返されます。@colA = 33の場合、30の行が返されます。@colA = 200の場合、100の行が返されます。これは、SelectステートメントでWhere句やいくつかのMin / Maxステートメントを使用するだけで実行できますか、それとも各条件をテストするIFステートメントで実行する方がよいでしょうか。
ご協力いただきありがとうございます!