共计 2243 个字符,预计需要花费 6 分钟才能阅读完成。
自动写代码机器人,免费开通
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 中有哪些常用的日期和时间函数问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注丸趣 TV 行业资讯频道了解更多相关知识。
向 AI 问一下细节