SQL Server系统函数:日期函数

Posted lonelyxmas

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server系统函数:日期函数相关的知识,希望对你有一定的参考价值。

原文:SQL Server系统函数:日期函数

1、返回当前日期和时间

  1. select GETDATE() ‘当前日期-精确到33毫秒‘
  2. select GETUTCDATE() ‘UTC日期和时间-精确到33毫秒‘
  3. select SYSDATETIME() ‘当前日期和时间-精确到100纳秒(高精度)‘
  4. select SYSUTCDATETIME() ‘UTC-精确到100纳秒(高精度)‘
  5. select SYSDATETIMEOFFSET()‘当前日期与UTC之间的差值(时分)‘

2、转换偏移,从一个转为另一个,从UTC-05:00转为UTC+03:00:

‘2007-08-12 10:20:35.9788989‘是UTC减去‘05:00‘之后算出来的,
所以UTC是‘2007-08-12 10:20:35.9788989‘加‘05:00‘,
也就是‘2007-08-12 15:20:35.9788989‘,
然后‘2007-08-12 15:20:35.9788989‘加上‘03:00‘,
也就是‘2007-08-12 18:20:35.9788989‘

select SWITCHOFFSET(‘2007-08-12 10:20:35.9788989 -05:00‘,‘+03:00‘)

将普通的日期时间型转为日期时间偏移,只是在日期时间后增加了offset值,返回:2007-08-12 10:20:35.0000000 -05:00

select TODATETIMEOFFSET(‘2007-08-12 10:20:35‘,‘-05:00‘)

3、显示日期一部分的字符串

  1. select SYSDATETIME(),
  2. DATENAME(year,SYSDATETIME()),
  3. DATENAME(quarter,SYSDATETIME()),
  4. DATENAME(month,SYSDATETIME()),
  5. DATENAME(dayofyear,SYSDATETIME()),
  6. DATENAME(day,SYSDATETIME()),
  7. DATENAME(week,SYSDATETIME()),
  8. DATENAME(weekday,SYSDATETIME()),
  9. DATENAME(hour,SYSDATETIME()),
  10. DATENAME(minute,SYSDATETIME()),
  11. DATENAME(second,SYSDATETIME()),
  12. DATENAME(millisecond,SYSDATETIME()),
  13. DATENAME(microsecond,SYSDATETIME()),
  14. DATENAME(nanosecond,SYSDATETIME()),
  15. DATENAME(TZoffset,SYSDATETIME()),
  16. DATENAME(ISO_WEEK,SYSDATETIME())

4、显示日期一部分的整数

  1. select YEAR(GETDATE()),
  2. MONTH(getdate()),
  3. DAY(getdate())
  4. select SYSDATETIME(),
  5. DATEPART(year,SYSDATETIME()),
  6. DATEPART(quarter,SYSDATETIME()),
  7. DATEPART(month,SYSDATETIME()),
  8. DATEPART(dayofyear,SYSDATETIME()),
  9. DATEPART(day,SYSDATETIME()),
  10. DATEPART(week,SYSDATETIME()),
  11. DATEPART(weekday,SYSDATETIME()),
  12. DATEPART(hour,SYSDATETIME()),
  13. DATEPART(minute,SYSDATETIME()),
  14. DATEPART(second,SYSDATETIME()),
  15. DATEPART(millisecond,SYSDATETIME()),
  16. DATEPART(microsecond,SYSDATETIME()),
  17. DATEPART(nanosecond,SYSDATETIME()),
  18. DATEPART(TZoffset,SYSDATETIME()),
  19. DATEPART(ISO_WEEK,SYSDATETIME())

5、增加、减少日期值

  1. SELECT DATEADD(quarter, 1, getdate()),
  2. DATEADD(quarter,-1, getdate())

6、计算两个日期的差值

  1. select DATEDIFF(DAY,‘2011-08-09‘,GETDATE()),
  2. DATEDIFF(MONTH,‘2011-08-09‘,GETDATE())

 

发布了416 篇原创文章 · 获赞 135 · 访问量 94万+

以上是关于SQL Server系统函数:日期函数的主要内容,如果未能解决你的问题,请参考以下文章

SQL server --时间日期函数类型转换

怎么让sql server 获取系统日期?(我意思是用啥语句)

SQL Server系统函数:类型转换函数

SQL SERVER查询时间是一年中第几周的函数

SQL Server日期函数应用

SQL Server中的时间函数有那些,最好举例说明?