Sql Server函数全解(四)日期和时间函数
日期和时间函数主要用来处理日期和时间值,本篇主要介绍各种日期和时间函数的功能和用法,一般的日期函数除了使用date类型的参数外,也可以使用datetime类型的参数,但会忽略这些值的时间部分。相同的,以time类型值为参数的函数,可以接受datetime类型的参数,但会忽略日期部分。
1.获取系统当前日期的函数getDate();
getDate()函数用于返回当前数据库系统的日期和时间,返回值的类型为datetime.
【例】select getDate() as currentTime;
2.返回UTC日期的函数UTCDATE()
UTCDATE()函数返回当前UTC(世界标准时间)日期值.
【例】select GETUTCDATE() AS UTCtime;

因为本人深处朝廷管辖范围之内,位于东八时区,所以系统的当前时间比UTC提前8小时,所以这里显示的UTC时间需要减去8个小时的时差。
3.获取天数的函数DAY(d)
DAY(d)函数用于返回指定日期的d是一个月中的第几天,范围从1~31,该函数在功能上等价于DATEPART(dd,d)。
【例】select DAY('2015-04-30 01:01:01');
4.获取月份的函数MONTH(d)
MONTH(d)函数用于返回指定日期d中月份的整数值。
【例】SELECT MONTH('2015-04-30') AS monthValue;

5.获取年份的函数YEAR(d)
YEAR(d)函数返回指定日期d中年份的整数值。
【例】SELECT YEAR('2015-04-30'),YEAR(1997-07-01);

6.获取日期中指定部分字符串值的函数DATENAME(dp,d)
DATENAME(dp,d)根据dp指定返回日期中相应部分的值,例如YEAR返回日期中的年份值,MONTH返回日期中的月份值,dp其它可以取的值有:quater,dayofyear,day,week,weekday,hour,minute,second等。
【例】SELECT DATENAME(year,'2015-04-30 01:01:01') AS yearValue;
SELECT DATENAME(quater,'2015-04-30 01:01:01') AS quaterValue;
SELECT DATENAME(dayofyear,'2015-04-30 01:01:01') AS dayofyearValue;
SELECT DATENAME(day,'2015-04-30 01:01:01') AS dayValue;
SELECT DATENAME(week,'2015-04-30 01:01:01') AS weekValue;
SELECT DATENAME(weekday,'2015-04-30 01:01:01') AS weekdayValue;
SELECT DATENAME(hour,'2015-04-30 01:01:01') AS hourValue;
SELECT DATENAME(minute,'2015-04-30 01:01:01') AS minuteValue;
SELECT DATENAME(second,'2015-04-30 01:01:01') AS secondValue;

7.获取日期中指定部分的整数值的函数DATEPART(dp,d)
DATEPART(dp,d)函数返回指定日期中相应的部分的整数值,dp的取值与DATETIME函数相同。
【例】SELECT DATEPART(year,'2015-04-30 01:01:01'),DATEPART(month,'2015-04-30 01:01:01'),
DATEPART(dayofyear,'2015-04-30 01:01:01');

8.计算日期和时间的函数DATEADD(dp,num,d)
DATEADD(dp,num,d)函数用于执行日期的加运算,返回指定日期值加上一个时间段后的新日期。dp指定日期中进行加法运算的部分值,例如:year,month,day,hour,minute,second,millsecond等,num指定与dp相加的值,如果该值为非整数值,将舍弃该值的小数部分,d为执行加法运算的日期。
SELECT DATEADD(year,1,'2015-04-30 01:01:01') AS yearAdd,
DATETIME(month ,2, '2015-04-30 01:01:01') AS weekdayAdd,
DATEADD(hour,2,'2015-04-30 01:01:01') AS hourAdd;

日期函数上面例子的脚本:
-时间函数
select getDate() as currentTime;
select GETUTCDATE() AS UTCtime;
select DAY('2015-04-30 01:01:01');
SELECT MONTH('2015-04-30')AS monthValue;
SELECT YEAR('2015-04-30'),YEAR('1997-07-01'); SELECT DATENAME(year,'2015-04-30 01:01:01') AS yearValue,
DATENAME(quarter,'2015-04-30 01:01:01') AS quaterValue,
DATENAME(dayofyear,'2015-04-30 01:01:01') AS dayofyearValue,
DATENAME(day,'2015-04-30 01:01:01') AS dayValue,
DATENAME(week,'2015-04-30 01:01:01') AS weekValue,
DATENAME(weekday,'2015-04-30 01:01:01') AS weekdayValue,
DATENAME(hour,'2015-04-30 01:01:01') AS hourValue,
DATENAME(minute,'2015-04-30 01:01:01') AS minuteValue,
DATENAME(second,'2015-04-30 01:01:01') AS secondValue; SELECT DATEPART(year,'2015-04-30 01:01:01'),
DATEPART(month,'2015-04-30 01:01:01'),
DATEPART(dayofyear,'2015-04-30 01:01:01'); SELECT DATEADD(year,1,'2015-04-30 01:01:01') AS yearAdd,
DATEADD(month ,2, '2015-04-30 01:01:01') AS weekdayAdd,
DATEADD(hour,2,'2015-04-30 01:01:01') AS hourAdd;
Sql Server函数全解(四)日期和时间函数的更多相关文章
- Sql Server函数全解<四>日期和时间函数
原文:Sql Server函数全解<四>日期和时间函数 日期和时间函数主要用来处理日期和时间值,本篇主要介绍各种日期和时间函数的功能和用法,一般的日期函数除了使用date类型的参数外, ...
- 【MySQL作业】MySQL函数——美和易思日期和时间函数应用习题
点击打开所使用到的数据库>>> 1.采用尽可能多的方式显示当前系统日期和时间. 下列 SQL 语句可以显示当前系统的日期和时间: curdate() 和 current_date() ...
- SQL Server -- 回忆笔记(四):case函数,索引,子查询,分页查询,视图,存储过程
SQL Server知识点回忆篇(四):case函数,索引,子查询,分页查询,视图,存储过程 1. CASE函数(相当于C#中的Switch) then '未成年人' else '成年人' end f ...
- 【PostgreSQL-9.6.3】函数(3)--日期和时间函数
在PostgreSQL中,DATE.TIME.TIMESTAMP是三种不同的数据类型.DATE表示日期类型,格式为YYYY-MM-DD或YYYYMMDD:TIME表示时间类型,格式为hh:mi:ss: ...
- ylb:日期和时间函数
ylbtech-SQL Server:SQL Server-日期和时间函数 日期和时间函数. ylb:日期和时间函数 返回顶部 1,日期和时间函数获取(当前)日期 GetDate() 2,提取部分日期 ...
- Sql Server函数全解<五>之系统函数
原文:Sql Server函数全解<五>之系统函数 系统信息包括当前使用的数据库名称,主机名,系统错误消息以及用户名称等内容.使用SQL SERVER中的系统函数可以在需要的时候获取这些 ...
- sql server 系统常用函数:聚合函数 数学函数 字符串函数 日期和时间函数和自定义函数
一.系统函数 1.聚合函数 聚合函数常用于GROUP BY子句,在SQL Server 2008提供的所有聚合函数中,除了COUNT函数以外,聚合函数都会忽略空值AVG.COUNT.COUNT_BIG ...
- Sql Server、Oracle、MySQL 日期格式化函数处理
目录 Sql Server Oracle MySql Sql Server CONVERT ( '取数长度' , '时间' , '类型') 查询对应时间: 2021-03-17T19:18:18.00 ...
- 为什么说JAVA中要慎重使用继承 C# 语言历史版本特性(C# 1.0到C# 8.0汇总) SQL Server事务 事务日志 SQL Server 锁详解 软件架构之 23种设计模式 Oracle与Sqlserver:Order by NULL值介绍 asp.net MVC漏油配置总结
为什么说JAVA中要慎重使用继承 这篇文章的主题并非鼓励不使用继承,而是仅从使用继承带来的问题出发,讨论继承机制不太好的地方,从而在使用时慎重选择,避开可能遇到的坑. JAVA中使用到继承就会有两 ...
随机推荐
- Awstats显示国家地区插件GeoIP安装
Awstats默认安装之后是不具有识别访问者的国家和地区信息的,所以需要安装插件支持Awstats列出访问者的国家和地区,便于分析GeoIP免费的是国家/IP的数据表,GeoIPCityLite是地区 ...
- shell条件测试test
shell条件测试可以通过以下两种方式: test 参数 测试内容 [ 参数 测试内容 ] 一.测试文件类型: test -e 文件名 (测试文件是否存在) [ - ...
- Building Modern Web Apps-构建现代的 Web 应用程序(一些感想)
<iframe src="http://channel9.msdn.com/Series/MVA-China/Web20140611A01/player?h=540&w=960 ...
- SQLite 预写式日志
SQLite在3.7.0版本引入了WAL (Write-Ahead-Logging),WAL的全称是Write Ahead Logging,它是很多数据库中用于实现原子事务的一种机制,引入WAL机制之 ...
- 迷你MVVM框架avalon在兼容旧式IE做的努力
很多时候,写代码就像砌砖头,只要我们不关心盖楼的原因.建筑的原理.土木工程基础和工程经验,就算我们砌了100栋高楼,我们也就只是一个砌砖工人,永远也成为不了一个工程师,更别说建筑师了.而那些包工头也只 ...
- 企业IT管理员IE11升级指南【7】—— Win7和Win8.1上的IE11功能对比
企业IT管理员IE11升级指南 系列: [1]—— Internet Explorer 11增强保护模式 (EPM) 介绍 [2]—— Internet Explorer 11 对Adobe Flas ...
- 【Java并发编程实战】-----synchronized
在我们的实际应用当中可能经常会遇到这样一个场景:多个线程读或者.写相同的数据,访问相同的文件等等.对于这种情况如果我们不加以控制,是非常容易导致错误的.在java中,为了解决这个问题,引入临界区概念. ...
- enum操作--获取枚举里的最大值
一个应用系统,如果程序里没有任何enum的使用,我认为它的可读性是有待商榷的. 求枚举里的最大/最小枚举值, 其实是对Array进行操作: enum EnumTest { ddd = , eee } ...
- 2013 duilib入门简明教程 -- 简单控件介绍 (12)
前面的教程应该让大家对duilib的整体有所映像了,下面就来介绍下duilib具体控件的使用. 由于官方没有提供默认的控件样式,所以我就尽量使用win7或者XP自带的按钮样式了,虽然界 ...
- Drupal8重命名上传的中文名文件
完整的模块代码文件在Coding.net上,想直接使用的请前往下载:https://coding.net/u/yamus/p/chinese_rename/git/tree/master 最近吧Dru ...