Expiry DateEnd
None 2000-06-29 00:00:00.000
None 2000-06-29 00:00:00.000
september 2013 2013-06-29 00:00:00.000
January 2012 2013-06-29 00:00:00.000
May 2020 2013-06-29 00:00:00.000
2013-06-29 00:00:00.000 2013-06-29 00:00:00.000
2 つの列から、将来の日付のため、2020 年 5 月の行を除くすべての日付を選択します。これは私がこれまでに持っているものです
DECLARE @YearFlag datetime
SET @YearFlag = DATEADD(yy,-5,GETDATE())
SELECT *
FROM #Table
WHERE (DateEnd IS NULL OR DateEnd = '' OR DateEnd <= @YearFlag)
OR (CHARINDEX(Convert(varchar, YEAR(GETDATE())),Expiry) > 0)
以下を使用して2012年1月の行を選択していましたが、エラーが発生しました
OR (Expiry != 'none' AND Expiry <= GETDATE())