本文部分内容参考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. Oracle 11g password过期被锁定报道 ORA-28000 the account is locked

    一.触发这个错误的原因及相关因素 是因为oracle11g中默认在default概要文件里设置了"PASSWORD_LIFE_TIME=180天"所导致.在Oracle 11g中是 ...

  2. PHP-微信公众平台开发-接收用户输入消息类型并响应

    原文:PHP-微信公众平台开发-接收用户输入消息类型并响应 <?php // 该代码块用于接收用户消息,根据用户输入的消息类型进行判断,文本,图片,视频,位置,链接,语音等,并取得值,处理后给予 ...

  3. Oracle利用存储过程性 实现分页

    分页的简单配置 在上一次已经说过了 这边说说怎么在存储过程中实现分页 首先建立存储过程 參考 http://www.cnblogs.com/gisdream/archive/2011/11/16/22 ...

  4. JS对文档进行操作

    对文档进行操作   创建节点 追加节点 删除节点 任务及例子 总结 对DOM的修改是,构建动态网页的关键.使用下面列举的方法,我们可以创建新的网页并且动态进行更改. 更多的DOM操作方法请查 DOM1 ...

  5. JavaScript重载解读

    在JavaScript有一个特殊的数据类型---Function种类,JavaScript每个功能Function的类型,例如可以.由于函数是对象.指针,不会与某个函数绑定. <pre name ...

  6. Bootstrap的栅格系统

    Bootstrap的栅格系统 上一节:ASP.NET MVC5 + EF6 入门教程 (6) View中的Razor使用 源码下载:点我下载 要做一个完整的系统,除了需要MVC这样的B/S框架及EF这 ...

  7. Linux Telnet安装配置

    本文以红帽6.2 64位版本为例,其它linux类似: linux默认是使用SSH服务的 而不安装telnet服务 ,所以需要手动安装telnet. 1.telnet的安装包有两个,分别是: teln ...

  8. [译]Java 设计模式之工厂

    (文章翻译自Java Design Pattern: Factory) 1.Java工厂模式的来历 工厂设计模式用于创建基于不同参数的对象.下面的例子就是在一个工厂里创建一个人.如果我们向工厂要一个b ...

  9. leetcode[50] N-Queens

    题目:给定一个n,那么在n*n的棋盘里面放国际象棋的皇后,皇后之间互不在攻击范围.(皇后的攻击范围是她所在位置的哪一行,那一列,和她的正负1的对角线) The n-queens puzzle is t ...

  10. 依据道路的shape获得high_cross和low_cross

    如图所看到的:怎样依据提供的道路的shape file获得该路的high cross和low cross 所谓的high cross就是图中的king st这条路,low cross是Gravers ...