sql datediff 計算時間差

2021-09-08 01:55:47 字數 1741 閱讀 6908

有關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.返回相差兩個季度時間得記錄

**如下:需要時,可以將時間字段改為資料庫中相應的字段

1declare @startdatetime datetime

2declare @enddatetime datetime

3set

@startdatetime='

2011-01-01'4

set@enddatetime='

2011-07-10'5

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.

具體可參考:technet

:datediff

SQL DATEDIFF語法及時間函式

sql datediff語法及時間函式 sql 查詢當天 本週 本月記錄 select frominfowheredatediff dd,datetime,getdate 0 查詢24小時內的 select frominfowheredatediff hh,datetime,getdate 24 i...

matlab 時間計算

matlab 時間函式 2008 11 13 22 51 time and dates.時間個日期 current date and time.當前時間和日期 now 當前日期時間數字 current date and time as date number.date 當前日期字串 current ...

sql 時間計算

兩個時間之差的合計 declare i int set i datediff ms,getdate rand 24,getdate select convert varchar 10 i 86400000 days convert varchar 10 i 86400000 3600000 hour...