日期和时间处理函数
2014-09-17 15:08
253 查看
这篇文章要总结的是SQL在日期和时间处理方面的函数,总结起来,主要有以下这些函数在我们的开发过程中使用得比较多的。
1,获取当前系统时间
2,DATEADD函数
3,DATEDIFF函数
4,DATEPART函数
5,YEAR,MONTH和DAY函数
6,DATENAME函数
7,ISDATE函数
SQL查询代码:
查询结果:
我们可以看到,它们返回的日期时间完全相同。
例如,以下代码为“2014年7月26日”增加1年。
查询结果:
例如,以下代码返回两个值之间相差的天数。
查询结果:
我们可以看到,它们相关了365天。
例如,以下代码返回输入值的月份部分。
查询结果:
代码返回的当前日期的月份是7月。
例如,以下代码提取输入值的年,月,日部分。
查询结果:
例如,以下代码返回给定输入日期和时间值的月份名称字符串。
查询结果:
例如,以下代码返回1:
以下代码则返回0:
查询结果:
1和0可以很好地转换成C#里的true和false。
1,获取当前系统时间
2,DATEADD函数
3,DATEDIFF函数
4,DATEPART函数
5,YEAR,MONTH和DAY函数
6,DATENAME函数
7,ISDATE函数
获取当前系统时间
获取当前系统时间的函数有很多,但是最常用就两个,CURRENT_TIMESTAMP和GETDATE。它们返回的日期和时间格式完全相同,但是因为CURRENT_TIMESTAMP是标准SQL,所以更推荐使用它。SQL查询代码:
SELECT GETDATE() AS [GETDATE], CURRENT_TIMESTAMP AS [CURRENT_TIMESTAMP];
查询结果:
我们可以看到,它们返回的日期时间完全相同。
DATEADD函数
DATEADD函数可以将指定日期的部分作为单位,为输入的日期和时间值增指定的数量。它的语法形式为:DATEADD(part,n,dt_val)例如,以下代码为“2014年7月26日”增加1年。
SELECT DATEADD(YEAR,1,'20140726');
查询结果:
DATEDIFF函数
DATEDIFF函数返回两个日期和时间之间相差的指定部分的计数。它的语法形式:DATEDIFF(part,dt_val1,dt_val2)例如,以下代码返回两个值之间相差的天数。
SELECT DATEDIFF(DAY,'20130726','20140726');
查询结果:
我们可以看到,它们相关了365天。
DATEPART函数
DATEPART函数返回一个表示给定日期和时间值的指定部分的整数。语法:DATEPART(part,dt_val)例如,以下代码返回输入值的月份部分。
SELECT DATEPART(MONTH,'20140726');
查询结果:
代码返回的当前日期的月份是7月。
YEAR,MONTH和DAY函数
YEAR,MONTH和DAY函数是DATEPART函数的简略版本。它们分别返回一个代表输入日期和时间值中年,月,日部分的整数。语法:YEAR(dt_val),MONTH(dt_val),DAY(dt_val)例如,以下代码提取输入值的年,月,日部分。
USE TSQLFundamentals2008; GO SELECT YEAR('20140726') AS theyear, MONTH('20140726') AS themonth, DAY('20140726') AS theday;
查询结果:
DATENAME函数
DATENAME函数返回一个给定日期和时间值的指定部分的字符串。语法为:DATENAME(part,dt_val)例如,以下代码返回给定输入日期和时间值的月份名称字符串。
SELECT DATENAME(MONTH,'20140726');
查询结果:
ISDATE函数
ISDATE函数接受一个字符串作为输入,如果能把这个字符串转换为日期和时间数据类型的值,则返回1,如果不能,则返回0。它的语法:ISDATE(string)例如,以下代码返回1:
以下代码则返回0:
USE TSQLFundamentals2008; GO -- 返回1,可以正常转换 SELECT ISDATE('20090212'); -- 返回0,因为2月没有30,所以转换失败 SELECT ISDATE('20090230');
查询结果:
1和0可以很好地转换成C#里的true和false。
相关文章推荐
- 处理日期和时间数据--日期和时间函数
- SQL常用日期时间处理函数
- Sybase 时间日期 的处理函数
- SAP 使用较频繁的日期时间处理函数总结
- 浅谈JAVA时间日期处理函数
- 日期时间处理函数收集
- ASP.Net 获取服务器的当前日期时间的综合处理函数!
- SqlServer时间日期处理函数及字符串转换
- SqlServer日期和时间处理函数
- php 日期时间处理函数小结
- mysql常用函数----日期和时间处理函数
- 日期时间处理函数
- Matlab中处理日期与时间的函数详解
- Oracle 日期和时间处理函数汇总
- ORACLE 日期时间处理函数
- SqlServer时间日期处理函数及字符串转换
- VB 时间处理 日期处理函数
- SqlServer时间日期处理函数及字符串转换
- SAP 使用较频繁的日期时间处理函数总结
- php 时间处理函数--获取某个间隔前的日期