sqlserver字符串转日期格式 string类型转日期类型

今天给大家分享一下SQLServer中常用的关于日期和时间函数的知识,希望对你有所帮助!1、DATEADD(日期部分,数字,日期)函数:在给指定日期添加时间间隔后,返回新的日期时间值。参数描

本文最后更新时间:  2023-05-02 01:07:33

今天给大家分享一下SQLServer中常用的关于日期和时间函数的知识,希望对你有所帮助!

1、DATEADD(日期部分,数字,日期)

函数:在给指定日期添加时间间隔后,返回新的日期时间值。

参数描述:

Datepart:指定要向日期的哪一部分添加数值。

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

数字:指定要增加的值。如果是非整数,小数部分将被丢弃。负数意味着减去相应的时间间隔。

日期:指明要处理的日期。

用法:

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

2、DATEDIFF(日期部分,开始日期,结束日期)

功能:指定两个时间之间的时间差。例如天、小时、分钟等。

参数描述:

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

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

Startdate:可以理解为被减数。

End:可以理解为还原。如果开始日期大于结束日期,则返回负值。

用法:

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

3、日期名称(数据部分,日期)

效果:返回指定日期的指定部分的字符串。

参数描述:

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

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

日期:日期表达式

用法:

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、日期部分(数据部分,日期)

返回指定日期的指定部分的整数。与DATENAME类似,返回值是一个整数。例如:

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

5.日|月|年函数

函数:返回指定日期的日/月/年部分。您可以用DATEPART替换它。

用法:

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

6、EOMONTH(输入[,month_to_add])

角色:这个函数是在SQLServer 2012中引入的。EOMONTH函数用于返回指定日期之前或之后的一个月的最后一天的日期。

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

用法;

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

7、从零件

功能:根据输入的年月日参数生成日期值,并返回。

格式:DATEFROMPARTS(年、月、日)

参数描述:

年:输入年的整数值。

月:输入1到12之间的月数。

日:输入年和月对应的日的整数值。

注意:如果上述三个参数中的任何一个为null,则返回null。

用法:

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

8、获取日期()

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

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

9、GETUTCDATE()

返回的当前UTC时间。家用减少八小时。

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

温馨提示:内容均由网友自行发布提供,仅用于学习交流,如有版权问题,请联系我们。