為替レートを含む複数の日付ごとのレコードがある為替レート表があります。
Date Rate
17/05/2012 5
23/05/2012 6
27/05/2012 7
2012 年 5 月 20 日が 2012 年 5 月 17 日から 23 日までの日付範囲で経過するため、2012 年 5 月 20 日を渡すと、レート 5 が返されるはずです。
為替レートを含む複数の日付ごとのレコードがある為替レート表があります。
Date Rate
17/05/2012 5
23/05/2012 6
27/05/2012 7
2012 年 5 月 20 日が 2012 年 5 月 17 日から 23 日までの日付範囲で経過するため、2012 年 5 月 20 日を渡すと、レート 5 が返されるはずです。
正しいデータ型があると仮定します(つまり、日付値を格納する varchar ではありません...)
SELECT TOP 1
Rate
FROM
MyTable
WHERE
DateColumn <= '20120520'
ORDER BY
DateColumn DESC
このようなものが動作します:
select Rate from tablename where Date in (
select max(Date) as Date
from tablename
where Date <= convert(datetime, '20/05/2012', 103)
)