計算された日付フィールドでWHERE操作を実行できますか?
SQLで正しく記述されていないルックアップフィールドがありますが、残念ながら変更できません。ただし、基本的には、日付を「2010年7月」や「2009年6月」などの文字として(他の日付以外のデータとともに)格納します。最初に日付を抽出し(LIKE演算子を使用して実行しました)、次に日付範囲に基づいてデータを抽出します。
SELECT
BusinessUnit,
Lookup,
ReleaseDate
FROM
(
SELECT TOP 10
LookupColumn As Lookup,
BU as BusinessUnit,
CONVERT(DATETIME, REPLACE(LookupColumn,'-',' ')) as ReleaseDate
FROM
[dbo].[LookupTable]
WHERE
LookupColumn LIKE N'%-2010'
) MyTable
ORDER BY ReleaseDate
WHERE ReleaseDate = '2010-02-01'
WHERE演算子に問題があります。計算フィールドをカプセル化するサブクエリを作成すると、WHEREなどの操作を実行できると思いますが、間違っている可能性があります。結論として、計算フィールドで操作を行うことは可能ですか?
更新:確かに私は順序を混乱させ、さらにLIKE演算子は、私を混乱させていたTBD-2010などの日付以外の値も返していました。