Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
sql server日期减法_sql当前日期减去指定日期,希望能够帮助你!!!。
白雨青工作站发文地址:SQlServer的日期相减(间隔)dateadd ,datediff 函数-白雨青工作站
dateadd() 函数在日期中添加或减去指定的时间间隔。
dateadd(datepart,number,date)
date 参数是合法的日期表达式。number 是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。
举例如下:
select '一年前' type,dateadd(year, -1, GETDATE()) time union all select '当前时间' type,GETDATE() time union all select '一年后' type,dateadd(year, 1, GETDATE()) time
select '一月前' type,dateadd(month, -1, GETDATE()) time union all select '当前时间' type,GETDATE() time union all select '一月后' type,dateadd(month, 1, GETDATE()) time
select '一天前' type,dateadd(day, -1, GETDATE()) time union all select '当前时间' type,GETDATE() time union all select '一天后' type,dateadd(day, 1, GETDATE()) time
select '一周前' type,dateadd(week, -1, GETDATE()) time union all select '当前时间' type,GETDATE() time union all select '一周后' type,dateadd(week, 1, GETDATE()) time
select '一小时前' type,dateadd(hour, -1, GETDATE()) time union all select '当前时间' type,GETDATE() time union all select '一小时后' type,dateadd(hour, 1, GETDATE()) time
select '一分钟前' type,dateadd(minute, -1, GETDATE()) time union all select '当前时间' type,GETDATE() time union all select '一分钟后' type,dateadd(minute, 1, GETDATE()) time
select '一秒前' type,dateadd(second, -1, GETDATE()) time union all select '当前时间' type,GETDATE() time union all select '一秒后' type,dateadd(second, 1, GETDATE()) time
datediff() 函数返回两个日期之间的间隔,默认是间隔天数
datediff(datepart, date1,date2)
date1:开始时间;date2:结束时间
举例如下:
select dateadd(year, -1, GETDATE()) 开始日期,GETDATE() 结束日期,'前后2个时间相差' + convert(varchar(1),datediff(year, dateadd(year, -1, GETDATE()),GETDATE()))+ '年' type union all select dateadd(year, -1, GETDATE()) 开始日期,GETDATE() 结束日期,'前后2个时间相差' + convert(varchar(10),datediff(month, dateadd(year, -1, GETDATE()),GETDATE()))+ '月' type union all select dateadd(year, -1, GETDATE()) 开始日期,GETDATE() 结束日期,'前后2个时间相差' + convert(varchar(10),datediff(day, dateadd(year, -1, GETDATE()),GETDATE()))+ '天' type
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
上一篇
已是最后文章
下一篇
已是最新文章