我修改SQL Server中的存儲過程2008年的原始程序參加了兩個日期添加日期參數和時間參數單日期時間
@StartDate DATETIME
@EndDate DATETIME
,並會時間部分轉換爲最早和最晚可能的時間分別。
我已經添加了兩個附加參數來接受時間部分。
@StartTime DATETIME
@EndTime DATETIME
時間部分是可選的。
RDL報告文件爲用戶在線生成報告。邏輯需要在存儲過程中發生。
我到目前爲止沒有太多,因爲我是離開我的元素的C#程序員。
IF (@StartTime IS NULL)
SET @StartDate = fn_SetBeginningTime(@StartDate) -- Sets time portion to earliest value
ELSE
-- This is where I don't know how to add the time from @StartTime to the time portion of the datetime value @StartDate
IF (@EndTime IS NULL)
-- This will do the same as the start time/start date
如果你在2008年,爲什麼你不使用更適合這些參數的數據類型(例如'date'和'time')。他們會讓答案更容易編寫,而不需要額外的假設 – 2011-05-09 14:40:13
如前所述,我是C#程序員,這是我第一次進入SQL編碼領域。我的猜測是,DATETIME用於@StartDate/@EndDate,因爲時間部分被添加到它們,並且它們表示的字段是DateTime字段。 – 2011-05-09 14:45:56
退後一步,告訴我們你在做什麼日期的時間部分。在SQL Server中,如果不指定時間,則datetime的時間部分默認爲午夜。例如。 'Set @StarDate ='5/9/2011''表示變量的時間部分是午夜。在TSQL中, – 2011-05-09 15:23:37