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