我正在創建用於搜索的存儲過程。 DateOrdered
是datetime
類型表中的列名。如何在日期時間存儲過程中使用BETWEEN
問題是我想對此列執行搜索。用戶可以搜索開始日期和結束日期。另外,用戶可以爲任何參數發送null,例如開始日期或結束日期。
當用戶不會發送開始日期或結束日期時,我將搜索另一個選項。我的問題是,我如何處理下面是我試過的查詢,但沒有成功
SELECT
@C_Order_ID = C_Order_ID
FROM
C_Order COrder
WHERE
(@AD_Org_ID IS NULL OR
COrder.AD_Org_ID IN (SELECT ID FROM fnSplitter(@AD_Org_ID)))
AND (@AD_Client_ID IS NULL OR
@AD_Client_ID IN (SELECT ID FROM fnSplitter(@AD_Client_ID)))
AND (@IsActive IS NULL OR COrder.IsActive = @IsActive)
AND (@startDate IS NULL OR
COrder.DateOrdered = @startDate BETWEEN @EndDate IS NULL
OR COrder.DateOrdered = @EndDate)
感謝您的回覆。
@ R.T。如果用戶將發送空值然後 – 2014-08-28 07:12:38
@ A.Goutam: - 更新我的答案來處理! – 2014-08-28 07:14:53
但我的領域是類型的日期時間,我只想不爲日期時間 – 2014-08-28 07:16:16