SQL datediff 計算時間差


有關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():  2011-08-13 13:53:09.243

   GetDate()+1 :  2011-08-14 13:53:09.243 

   如上,直接在時間的日上加1. 



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM