我正在使用SQLServer 2008並遇到此問題。我有一個功能,用戶可以從菜單中選擇多個日期。他們還可以勾選「選擇所有日期」複選框。條件where子句SQLServer
如果他們選中複選框,我的查詢應該只返回給定日期的結果。因此執行一個WHERE子句。 如果他們沒有選擇複選框,但選擇了一個或多個日期;該查詢應該使用where子句執行。
我有2個參數。 -SelectedDates(如 '2012年11月15日', '2012年11月15日'。) -AllDates( 'X' 或 '')
通常情況下,查詢對子級是這樣的:
SELECT * FROM x
WHERE x.date in ([Param.1])
所以我的問題:如何在WHERE子句不需要的情況下適應查詢。
FYI:在[Param.1]符號是我在工作環境中使用
'... OR AllDates ='X''? –
你必須使用T-SQL(一個帶有邏輯的存儲過程,例如,如果參數值是X,那麼你可以執行一個語句,否則執行一個語句),請參閱http://msdn.microsoft.com/en-us/library/ms182717。 ASPX –