2013-03-06 48 views
1

我使用的是SQL Server中,我有一個這樣的過程:SQL Server的日期時間的自定義日期

create proc Output1 
(
    @Date_From datetime, 
    @Date_To datetime 

然後,我將執行這樣的步驟:

exec Output1 '03-01-2013 06:00:00AM', '03-31-2013 06:00:00AM' 

因此,如何能我在執行程序時指定了6:00:00AM的時間,但我只會輸入'03 -01-2013','03 -01-2013'的日期,但輸出仍然是'03 -01-2013 06:00:00 AM' ,'03 -31-2013 06:00:00 AM'?

感謝,

回答

3

使用此在您的存儲過程來設置時間部分:

declare @x datetime = '03-01-2013'; 
select @x = DateAdd(hh, 6, DateDiff(dd, 0, @x)) 
print @x 

更多:DATEDIFFDATEADD

+0

......爲什麼與'DateDiff'費心呢? ...這很好'select @x = DateAdd(hh,6,@x)' – whytheq 2013-03-06 08:03:45

+0

It works .. Thanks ..^_^.. – Captain16 2013-03-06 11:00:50