SQL Server DATEDIFF() 函數


DATEDIFF() 函數返回兩個日期之間的天數。

DATEDIFF(datepart,startdate,enddate):startdate 和 enddate 參數是合法的日期表達式。datepart 參數可以是下列的值:

yy, yyyy
季度 qq, q
mm, m
年中的日 dy, y
dd, d
wk, ww
星期 dw, w
小時 hh
分鍾 mi, n
ss, s
毫秒 ms
微妙 mcs
納秒 ns

實例:計算一個月的第一天

select dateadd(mm,DATEDIFF(mm,0,getdate()),0);

原理分析:

1. 數字0代表 1900-01-01 00:00:00.000

select cast(0 as datetime)

1900-01-01 00:00:00.000

2.DATEDIFF(mm,0,getdate()) :得到與1900-01-01相關多少個月

3.DATEADD(mm, M, 0) :M即上面得到相差的月份,0代表1900-01-01 ,加上相關的月分就是這個月的第一天

 


免責聲明!

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



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