SQL Server中有哪些常用的日期和时间函数

发布时间:2021-07-14 14:24:50 作者:Leah
来源:亿速云 阅读:171

SQL Server中有哪些常用的日期和时间函数,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

1、DATEADD(datepart,number,date)

作用:返回给指定日期加一个时间间隔后新的datetime值

参数说明:

datepart:指定为日期的哪部分增加数值。

常用的值有:年(yy/yyyy),季度(qq/q),月份(mm/m),日(day/dd/d),周(wk/ww),小时(hh),分钟(mi,n),秒(ss/s)。

number:指定要增加的数值。如果是非整数将会舍去小数部分。负数表示减去相应的时间间隔。

date:表示要处理的日期。

用法:

-- 在指定日期上加三个月 select DATEADD(mm,3,'2020-12-30'); -- 指定日期减一天 select DATEADD(day,-1,'2020-12-30');

2、DATEDIFF(datepart,startdate,enddate)

作用:指定两个时间相差的时间数。比如天、小时、分钟等等。

参数说明:

datepart:指定返回的日期时间维度(天、小时、分钟)。

常用的值有:年(yy/yyyy),季度(qq/q),月份(mm/m),日(day/dd/d),周(wk/ww),小时(hh),分钟(mi,n),秒(ss/s)。

startdate:可以理解被减数。

enddate:可以理解减数。如果startdate大于enddate返回负值。

用法:

SELECT DATEDIFF(day,'2021-02-05','2021-02-09') AS DiffDate --返回 4天

3、DATENAME(deatpart,date)

作用:返回指定日期的指定部分的字符串。

参数说明:

datepart:指定返回的日期时间维度(天、小时、分钟)。

常用的值有:年(yy/yyyy),季度(qq/q),月份(mm/m),日(day/dd/d),周(wk/ww),小时(hh),分钟(mi,n),秒(ss/s)。

date:日期表达式

用法:

DateName(quarter,GetDate()) as '第几季度' DateName(week,GetDate()) as '一年中的第几周' DateName(DAYOFYEAR,GetDate()) as '一年中的第几天' DateName(year,GetDate()) as '年' DateName(month,GetDate()) as '月' DateName(day,GetDate()) as '日' DateName(hour,GetDate()) as '时' DateName(minute,GetDate()) as '分' DateName(second,GetDate()) as '秒'

4、DATEPART(deatpart,date)

返回指定日期中指定部分的整数。用法和DATENAME相似,返回值为整数。比如:

SELECT DATEPART(weekday,'20210209') --返回值为2 SELECT DateName(weekday,'20210209') --返回值为星期二

5、DAY|MONTH|YEAR 函数

作用:返回指定日期所在 日/月/年的部分。可以用DATEPART替换。

用法:

SELECT DAY('2021-02-09') --返回 9 SELECT MONTH('2021-02-09') --返回 2 SELECT YEAR('2021-02-09') --返回 2021

6、EOMONTH(input[,month_to_add])

作用:该函数是在SQLServer 2012中引入的。EOMONTH函数用来返回指定日期之前或之后某个月的最后一天的日期。

语法结构:=EOMONTH(开始日期,指定起始日期前后的月份)

用法:

DECLARE @date DATETIME = '2021-02-09'; SELECT EOMONTH ( @date,7) AS Result; --加七个月的月末日期 2021-09-30 SELECT EOMONTH ( @date,-2) AS Result; -- 减两个月的月末日期 2020-12-31

7、FROMPARTS

作用:根据输入的年、月、日参数生成一个日期值,并返回。

格式:DATEFROMPARTS(year,month,day)

参数说明:

year:输入年份的整数值

month:输入1~12之间的月份数

day:输入年月所对应的day整数值

注意:如果上面三个参数,任意一个参数输入null,则返回null。

用法:

SELECT DATEFROMPARTS (2020,2,09) AS [生成日期数据]; --2020-02-09

8、GETDATE()

这个太常见了,就是获取系统当前时间。

SELECT GETDATE() --返回结果 2021-02-09 08:28:11.307

9、GETUTCDATE()

返回当前的UTC时间。国内使用减八小时。

SELECT GETUTCDATE() --返回结果 2021-02-09 00:29:21.710

关于SQL Server中有哪些常用的日期和时间函数问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

推荐阅读:
  1. 《起 航 之SQL技能全掌握》下
  2. SQL日期时间函数总结(MSSQL)

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

sqlserver

上一篇:Linux系统中如何把文件拷贝到U盘

下一篇:Perl中如何使用目录操作函数

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》