有關datediff的相應信息,見如下:
DATEDIFF (datepart ,startdate ,enddate )
- datepart
-
是指定所跨邊界類型的 startdate 和 enddate 的一部分。下表列出了所有有效的 datepart 參數。用戶定義的變量等效項是無效的。
datepart
縮寫
year
yy, yyyy
quarter
qq, q
month
mm, m
dayofyear
dy, y
day
dd, d
week
wk, ww
hour
hh
minute
mi, n
second
ss, s
millisecond
ms
microsecond
mcs
nanosecond
ns
- startdate
-
是一個表達式,可以解析為 time、date、smalldatetime、datetime、datetime2 或 datetimeoffset 值。date 可以是表達式、列表達式、用戶定義的變量或字符串文字。從 enddate 減去 startdate。
為避免不確定性,請使用四位數年份。有關兩位數年份的信息,請參閱two digit year cutoff 選項。
- enddate
-
請參閱 startdate。
1.返回相差兩個季度時間得記錄
代碼如下:需要時,可以將時間字段改為數據庫中相應的字段
declare @startDateTime datetime declare @endDateTime datetime set @startDateTime='2011-01-01' set @endDateTime='2011-07-10' select DATEDIFF(QQ,@startDateTime,@endDateTime)
2.搜索最近3個月的訂單。
代碼如下:
declare @startDateTime datetime declare @endDateTime datetime set @startDateTime='2011-05-01' set @endDateTime=GETDATE() select DATEDIFF(m,@startDateTime,@endDateTime)
3.返回第一單訂單時間到最近的一單訂單時間的 天數差。
select DATEDIFF(DAY,(select MIN(insDT) from OP_Order),(select MAX(insDT) from OP_Order))
4.使用GETDATE()函數來獲得當前時間,
若使用GetDate()+1,結果是在現在的時間上多添加一天。
如:
GetDate()+1 : 2011-08-14 13:53:09.243
如上,直接在時間的日上加1.