本文部分内容参考msdn帮助文档和博客园!汇总备忘

1、获取当前日期

     getdate()函数以datetime数据类型的格式返回当前SQLServer服务器所在计算机的日期和时间。其语法格式为getdate()。返回值舍入到最近的秒小数部分,精度为.333秒数据库十七偏移量不包含在内。

示例:

SELECT GETDATE() --输出 2016-03-24 12:35:03.333

getutcdate()函数返回表示当前的 UTC 时间得自当前的本地时间和运行 SQL Server 的计算机操作系统中的时区设置。此值表示当前的 UTC 时间(注:世界统一时间)。

 SELECT GETUTCDATE() --输出 2016-03-24 04:35:03.333

2、获取年度信息YEAR,月份信息MONTH,天数信息day

year函数以int数据类型的格式返回特定日期的年度信息。其语法格式为YEAR(date数据)。其中的date数据时一个可以解析为time、date、smalldatetime、datetime、datetime2或datetimeoffset值的表达式,列表达式、用户定义的变量或字符串文字。

   示例:getdate() ='2016-03-24 12:54:41.463'

 SELECT YEAR(GETDATE())  --输出 2016

 month函数以int数据类型的格式返回特定日期的月份信息。其语法格式为month(date数据)。其中的date数据时一个可以解析为time、date、smalldatetime、datetime、datetime2或datetimeoffset值的表达式,列表达式、用户定义的变量或字符串文字。

 SELECT MONTH(GETDATE()) --输出 3

 day函数以int数据类型的格式返回特定日期的天数信息。其语法格式为day(date数据)。其中的date数据时一个可以解析为time、date、smalldatetime、datetime、datetime2或datetimeoffset值的表达式,列表达式、用户定义的变量或字符串文字。

 SELECT DAY(GETDATE()) --输出 24

3、获取任意时间部分DateName

  返回表示指定 date 的指定 datepart 的字符串。

语法:

datename(datepart,date)

参数:datepart是返回的date的一部分。下表列出了所有有效的datepart参数。

注:getdate() ='2016-03-24 12:54:41.463'

datepart 缩写形式 返回值  参考 描述
year yy,yyyy 2016 返回年
quarter qq,q 1 返回第几个季度
month mm,m 03 返回月
dayofyear dy,y 84 一年中的第几天
day dd,d 24 date中的天数部分
week wk,ww 13 一年中的第几周
weekday dw,w 星期四 返回星期几
hour hh 12 date中的小时部分
minute mi,n 54 date中的分钟部分
second ss,s 41 date中的秒部分
millisecond ms 463 date中的毫秒部分

4、获取任意时间部分DatePart

datepart函数以int数据类型的格式返回某个日期时间数据的指定部分。

   1、语法格式:

  datepart( datepart , date)

   datepart:特定的要返回的数据的格式代码。

     date数据:一个可以解析为time、date、smalldatetime、datetime、datetime2或者datetimeoffset值的表达式、列表表达式、用户定义的变量或字符串文字。

2、Datepart取值

    Datepart部分的取值如下表所示:

datepart 缩写形式 返回值  参考 描述
year yy,yyyy 2016 返回年度信息
quarter qq,q 1 返回第几个季度
month mm,m 03 返回月份信息
dayofyear dy,y 84 一年中的第几天
day dd,d 24 date中的天数部分
week wk,ww 13 一年中的第几周
weekday dw,w 5 返回星期几
hour hh 12 date中的小时部分
minute mi,n 54 date中的分钟部分
second ss,s 41 date中的秒部分
millisecond ms 463 date中的毫秒部分

5日期加法DATEADD

   dateadd函数将某个日期加上一个特定的时间间隔值后返回datetime数据类型的值。

    1、语法格式:

  dateadd (datepart,numer,date)

    numer:用于与detepart相加的值。如果指定了非整数值,则将舍弃该值的小数部分。

    date数据:一个用于解析为time、date、smalldatetime、datetime、datetime2、或datetimeoffset值的表达式、列表达式、用户定义的变量或字符串文字。

    datepart:时间部分。上节。

    示例:

  select getdate()    --输出 2016-03-24 16:03:59.293
  select dateadd(YYYY,10,getdate()) --加了十年 输出2026-03-24 16:04:36.893

6、日期减法DATEDIFF

    datediff函数将两个特定的日期数据相减,得到的结果可以按照detepart指定的格式返回特定的数据。

    1、语法格式:

  datediff(datepart,startdate,enddate)

    执行中将使用enddate减以startdate的值,如果startdate晚于enddate将返回负值。执行结果如果超出整数范围将提示错误。

    startdate:一个可以解析为time、date、smalldate、datetime、datetime2或datetimeoffset值的表达式、列表达式、用户定义的变量或字符串文字。

    enddate:一个可以解析为time、date、smalldate、datetime、datetime2或datetimeoffset值的表达式、列表达式、用户定义的变量或字符串文字。

    datepart:时间部分。

    示例:

  select datediff(YYYY,'2011-11-11','2012-12-12')    --输出1 年份相减之后的确是1
  select datediff(day,'2011-11-11','2012-12-12') --输出 397 两个日期相差的天数

    2013-3-13日补充,用此方法查询当前的记录:

  select * from test where datediff(day,Rq,getdate()) = 0 --其中Rq为日期列,此行代码的意思是什么呢?getdate()减去Rq列的值为0,Rq列的值与今天相减,号数为0 

7、SQLServer 2008中新增的日期时间型函数

    1、获取系统时间 SysDateTime

    sysdatetime函数以datetime2(7)数据类型的格式返回当前系统的日期和时间。其语法格式为sysdatetime()。返回值有七个小数位,但只精确到10毫秒。数据库偏移量未包含在内。

  SELECT SYSDATETIME()  --2013-06-17 22:17:59.0610211

    2、获取当前日期和时间 SysDateTimeOffset

    sysdatetimeoffset函数以datetimeoffset(7)数据类型的格式返回当前系统的日期和时间。其语法格式为sysdatetimeoffset()。返回值有七个小数位,但只精确到10毫秒。数据库时区偏移量包含在内。

  SELECT sysdatetimeoffset()  --2013-06-17 22:18:30.1788009 +08:00

    3、获取系统UTC时间 SysUTCDateTime

  select SysUTCDateTime() -- 2013-06-18 08:09:17.8229505

  8Current_TimeStamp当前数据库系统时间戳

  返回当前数据库系统时间戳,返回值的类型为 datetime,并且不含数据库时区偏移量。 此值得自运行 SQL Server 实例的计算机的操作系统。等价于GetDate();

  SELECT CURRENT_TIMESTAMP --2013-06-18 16:16:10.007

  9SWITCHOFFSET更改时间偏移量

    SwitchOffset更改 DateTimeOffset 值的时区偏移量并保留 UTC 值。

  SELECT SysDateTimeOffset()    -- 2013-06-18 16:40:34.4322865 +08:00
  SELECT SWITCHOFFSET (SysDateTimeOffset(), '+07:00') --2013-06-18 15:40:53.5403794 +07:00

  10、TodateTimeOffset  datetime2转datetimeoffset

  返回从 datetime2 表达式转换而来的一个 datetimeoffset 值。

  SELECT SysDateTimeOffset()    -- 2013-06-18 16:40:34.4322865 +08:00
  SELECT TodateTimeOffset(GetDate(),'+07:00') --2013-06-18 16:46:10.537 +07:00

  留意到以上代码是只更改时区,但是不更改时值。

  SysDateTime 和 SysUTCDate 在秒小数部分精度上要比 GetDate 和 GetUTCDate 高。 SysDateTimeOffset 包含系统时区偏移量。 SysDateTime、SysUTCDate 和 SysDateTimeOffset 可分配给采用任意日期和时间类型的变量。

  11、判断是否为日期数据isDate

    ISDATE函数可以验证某个输入值是否为有效的日期数据

    1、语法结构:

  ISDATE(expression)

    2、返回值

     若表达式为有效日期则返回 1 ,否则返回 0 。

    示例:

    select isdate('2012-12-12')    -- 输出1
    select isdate('xxxx-12-12')  -- 输出0

  12、eomonth 返回包含指定日期的月份的最后一天  

适用范围:SQL Server(SQL Server 2012 至当前版本),Azure SQL Database。

    语法:

eomonth ( start_date [, month_to_add ] )

    示例:

DECLARE @date DATETIME = GETDATE();
SELECT EOMONTH ( @date ) AS 'This Month';--当月
SELECT EOMONTH ( @date, 1 ) AS 'Next Month';--下一月
SELECT EOMONTH ( @date, -1 ) AS 'Last Month';--上一月
GO

  

sql server DateTime相关内置函数总结的更多相关文章

  1. SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程(支持单表或多表结查集分页)

    SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程,支持单表或多表结查集分页,存储过程如下: /******************/ --Author:梦在旅 ...

  2. SQL入门(2): Oracle内置函数-字符/数值/日期/转换/NVL/分析函数与窗口函数/case_decode

    本文介绍Oracle 的内置函数. 常用!  一. 字符函数 ASCII 码与字符的转化函数 chr(n)   例如 select chr(65) || chr(66) || chr(67) , ch ...

  3. 洗礼灵魂,修炼python(36)--面向对象编程(6)—类的相关内置函数issubclass,hasattr等

    啥?我靠,类也有内置函数?哈哈,确实有的.有哪些呢?请往下看 issubclass(cls, class_or_tuple, /) 1.基本属性: 方法全是特殊方法 2.使用方法:判断一个类是否由另一 ...

  4. C#字符串string以及相关内置函数

    C#字符串string函数 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享. ...

  5. python面向对象的多态-类相关内置函数-类内置魔法函数-迭代器协议-上下文管理-04

    多态 一种事物具备不同的形态 例如:水 --> 固态.液态.气态 多态:# 多个不同对象可以相应同一个对象,产生不同的结果 首先强调,多态不是一种特殊的语法,而是一种状态,特性(多个不同对象可以 ...

  6. SQL Server 2016将内置R语言?

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:随着大数据成为一个BuzzWord,和大数据相关的技术也变得越来越火热,其中就包括R语 ...

  7. SQL Server 2016将内置R语言

    题记:随着大数据成为一个BuzzWord,和大数据相关的技术也变得越来越火热,其中就包括R语言.而据说SQL Server 2016将会内置R语言支持? R语言作为一个存在很久的语言,在大数据热炒之后 ...

  8. (二)SQL注入常用的内置函数整理(以MySql为例)

    [1]@@datadir 函数作用:返回数据库的存储目录构造SQL语句 select @@datadir;   [2]@@version_compile_os 函数作用:查看服务器的操作系统SQL语句 ...

  9. Python对象相关内置函数

    针对一个对象,通过以下几个函数,可以获取到该对象的一些信息. 1.type() ,返回某个值的类型 >>> type() <class 'int'> >>&g ...

随机推荐

  1. Git@OSC & SSH配置

    #### [ 导入外部Git仓库到中国源代码托管平台(Git@OSC)] 免费代码托管 您可以通过SSH或者HTTP的方式提交和管理代码,也可以通过Web的方式在线阅读,编辑代码与Team@OSC的集 ...

  2. 回想一下著名的BigTable论题

    GFS捕捉一些业务场景的分布式文件系统的需求.很自然.此外还有一些与他们一些业务或依赖于文件系统是不那么容易,他们需要一个分布式数据库系统. BigTable那是,Google结构化数据处理的需求而产 ...

  3. C---数组名作函数参数

    数组名可以作函数的实参和形参.如: #include<stdio.h> int main(void) { ]; f(array,); } f(int arr[],int n) { } ar ...

  4. 拥抱大家庭,nodejs走thrift

    拥抱大家庭,nodejs走thrift.最贱的例子,nodejs与nodejs之间走thrift对传. 1,官网下载 http://mirrors.cnnic.cn/apache/thrift/0.9 ...

  5. IE6下jquery ajax报error的原因

    用jquery ajax()方法,在其他浏览都通过,IE7以上都通过,唯独在ie6不行. 我这边的解决方案是:必须保证ajax里面的所有数字为小写,ie6对大小写敏感. 错误: $.ajax({ ur ...

  6. Hibernat之关系的处理一对一处理

    第一步:编写两个pojo,比如一个学生表一个班级表  这里使用注解. 需要 公司表: package com.qcf.pox; import javax.persistence.CascadeType ...

  7. 转载JQuery绑定鼠标粘贴事件工具类

    // 粘贴事件监控 $.fn.pasteEvents = function( delay ) { if (delay == undefined) delay = 10; return $(this). ...

  8. 5. SQL Server数据库性能监控 - 当前请求

    原文:5. SQL Server数据库性能监控 - 当前请求 对于在线运行的系统,当前数据库性能监控,通常监视以下几点: (1) 是否有阻塞 (Blocking); (2) 是否有等待 (Waitin ...

  9. MVC+Bootstrap设计

    MVC+Bootstrap) 二 框架设计 文章目录: 一.前言 二.结构图 三.项目搭建 四.代码生成 五.实现接口 六.依赖倒置 七.登录实现 八.最后 一.前言 这个框架是从最近几年做过的项目中 ...

  10. Java 多线程之happens-before规则解释

    关于happens-before规则的解释网上有很多,我就不敢班门弄斧了.贴出两篇不错的文章以供学习. 1.happens-before俗解 2.深入Java内存模型--happen-before规则