我有一個存儲過程,它返回報表中使用的數據。用戶可以指定許多參數,其中兩個參數是開始日期和結束日期。我可以使用WHERE create_date BETWEEN @arg_start AND @arg_end
語句來篩選日期。t-sql條件日期處理
我不知道該怎麼做是爲了處理用戶不提供任何日期的情況。 CASE
不支持任何類似WHERE create_date = CASE @arg_start WHEN NULL THEN create_date ELSE BETWEEN @arg_start AND @arg_end
。
我已經做了大量的谷歌,MSDN的研究,在這裏,我還沒有找到處理條件空日期時間處理。儘管我知道它的不好的形式,但我可以通過編程的方式傳遞一個神奇的日期,例如1/1/1900,來測試而不是null,但這對於有條件的日期處理沒有任何幫助。
非常感謝大家迴應! – user542319 2012-01-11 19:33:54