嗯。。。。。SQL函数名之DATEADD的用法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嗯。。。。。SQL函数名之DATEADD的用法相关的知识,希望对你有一定的参考价值。

我去查了联机丛书,但没有看懂,
SELECT DATEADD(MM,4,'01/01/99')
请回答以上查询的结果,并解释结果是怎么来的:)
我晕,我突然想明白了。还是要谢谢一下。
但有一点不懂的是,我在网上发现了这个:
DateAdd(m, 1, 31-Jan-95) 上例中,DateAdd 返回 1995 年 2 月 28 日,而不是 1995 年 2 月 31 日。如果 date 是 1996 年 1 月 31 日,则由于 1996 年是闰年,返回值是 1996 年 2 月 29 日。

问:为什么不是“ 1995 年 2 月 31 日”,而是“1995 年 2 月 28 日”呢?这个怎么是反着加的?

dateadd用来进行时间的计算,你的例子就是在1999年1月1日的基础上加上4个月
所以结果应该是1999年5月1日(1999-5-1)
不过最好写成
select dateadd(MM,4,'01/01/1999')
参考技术A 2月平年只有28日,闰年只有29日,没有31日 - -b

Sql server DATEADD日期函数的使用

DATEADD日期函数

DATEADD() 函数在日期中添加或减去指定的时间间隔。

日:
在当前日期上加两天

select DATEADD(day,2,‘2014-12-30‘) 2015-01-01 
select DATEADD(dd,2,‘2014-12-30‘) 

月:
在当前日期上加两个月

select DATEADD(mm,2,‘2014-12-30‘)    结果:2015-02-28 
select DATEADD(MONTH,2,‘2014-12-30‘)  结果:2015-02-28 

年:
在当前日期上加两年

select DATEADD(yy,2,‘2014-12-30‘)  结果:2016-12-30 
select DATEADD(year,2,‘2014-12-30‘)  结果:2016-12-30

 


语法

DATEADD(datepart,number,date)
date 参数是合法的日期表达式。number 
是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。

 


datepart 参数可以是下列的值:
datepart       缩写 
年               yy, yyyy 
季度            qq, q 
月              mm, m 
年中的日   dy, y 
日             dd, d 
周             wk, ww 
星期         dw, w 
小时           hh 
分钟         mi, n 
秒             ss, s 
毫秒         ms 
微妙         mcs 
纳秒         ns 

如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】。

如果,您希望更容易地发现我的新博客,不妨点击一下,【关注我

如果,您希望给我更多的鼓励,不妨在右侧点击,【打赏一下

博文是自己对学习成果的总结,学习总结知识-》分析问题-》解决问题。

文中存在的观点/描述不正确的地方,欢迎指正。

感谢您的阅读,如果您对我的博客所讲述的内容有兴趣,请继续关注我的后续博客,我是yxtic 。






















以上是关于嗯。。。。。SQL函数名之DATEADD的用法的主要内容,如果未能解决你的问题,请参考以下文章

sql中日期函数的用法

sql server Dateadd()函数

Sql server DATEADD日期函数的使用

oracle dateadd函数

SQL Server DATEADD() 函数及实际项目应用注意事项

Excel SQL 查询中的 DateAdd 函数不起作用