SQL Server日期时间函数包括哪些,如何使用的
Admin 2022-08-03 群英技术资讯 857 次浏览
这篇文章给大家分享的是SQL Server日期时间函数包括哪些,如何使用的。小编觉得挺实用的,因此分享给大家做个参考,文中的介绍得很详细,而要易于理解和学习,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。返回当前SQLServer服务器所在计算机的日期和时间。返回值舍入到最近的秒小数部分,精度为.333秒数据库十七偏移量不包含在内。
select getdate() --输出 2013-03-09 15:16:00.570
select GETUTCDATE() -- 2013-06-18 08:02:53.253
year函数以int数据类型的格式返回特定日期的年度信息。其中的date数据时一个可以解析为time、date、smalldatetime、datetime、datetime2或datetimeoffset值的表达式,列表达式、用户定义的变量或字符串文字。
select year(getdate()) --输出 2013
month函数以int数据类型的格式返回特定日期的月份信息。
select month(getdate()) --输出 3
day函数以int数据类型的格式返回特定日期的天数信息。
select day(getdate()) --输出 9
datepart函数以int数据类型的格式返回某个日期时间数据的指定部分。
datepart( datepart , date数据 )
datepart参数:特定的要返回的数据的格式代码。Datepart部分的取值如下表所示:
| 说明 | 取值 |
|---|---|
| 返回年度信息 | Year、YYYY、YY |
| 返回月份信息 | Month、MM、M |
| 返回日期信息 | Day、DD、D |
| 返回周信息 | Week、WK、WW |
| 返回每周星期几信息 | WeekDay、DW |
| 返回季度信息 | Quarter、QQ、Q |
| 返回一年中第几天的信息 | DayOfYear、DY、Y |
| 返回小时信息 | Hour、HH |
| 返回分钟信息 | Minute、MI、N |
| 返回秒信息 | Second、SS、S |
| 返回毫秒信息 | MillSecond、MS |
SELECT DATEPART(yyyy,OrderDate) AS OrderYear,DATEPART(mm,OrderDate) AS OrderMonth,DATEPART(dd,OrderDate) AS OrderDay FROM Orders WHERE OrderId=1
返回表示指定日期的指定日期部分的字符串。
SELECT DateName(Quarter,GetDate()) --输出 2(6月)
dateadd函数将某个日期加上一个特定的时间间隔值后返回datetime数据类型的值。
dateadd (datepart,numer,date数据)
numer参数:用于与detepart相加的值。如果指定了非整数值,则将舍弃该值的小数部分。
select getdate() --输出 2013-03-09 16:03:59.293 select dateadd(YYYY,10,getdate()) --加了十年 输出2023-03-09 16:04:36.893
datediff函数将两个特定的日期数据相减,得到的结果可以按照detepart指定的格式返回时间间隔。
datediff(datepart,startdate,enddate)
执行中将使用enddate减以startdate的值,如果startdate晚于enddate将返回负值。执行结果如果超出整数范围将提示错误。
select datediff(YYYY,'2011-11-11','2012-12-12') --1 select datediff(day,'2011-11-11','2012-12-12') --397 select * from test where datediff(day,Rq,getdate()) = 0 --返回当天的数据:
sysdatetime函数以datetime2(7)数据类型的格式返回当前系统的日期和时间。返回值有七个小数位,但只精确到10毫秒。数据库偏移量未包含在内。
SELECT SYSDATETIME() --2013-06-17 22:17:59.0610211
sysdatetimeoffset函数以datetimeoffset(7)数据类型的格式返回当前系统的日期和时间。返回值有七个小数位,但只精确到10毫秒。数据库时区偏移量包含在内。
SELECT sysdatetimeoffset() --2013-06-17 22:18:30.1788009 +08:00
select SysUTCDateTime() -- 2013-06-18 08:09:17.8229505
返回当前数据库系统时间戳,返回值的类型为 datetime,并且不含数据库时区偏移量。 此值得自运行 SQL Server 实例的计算机的操作系统。等价于GetDate();
SELECT CURRENT_TIMESTAMP --2013-06-18 16:16:10.007
SwitchOffset更改 DateTimeOffset 值的时区偏移量并保留 UTC 值。
SELECT SysDateTimeOffset() -- 2013-06-18 16:40:34.4322865 +08:00 ELECT SWITCHOFFSET (SysDateTimeOffset(), '+07:00') --2013-06-18 15:40:53.5403794 +07:00
返回从 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 可分配给采用任意日期和时间类型的变量。
ISDATE函数可以验证某个输入值是否为有效的日期数据, 若表达式为有效日期则返回 1 ,否则返回 0 。
select isdate('2012-12-12') -- 输出1
select isdate('xxxx-12-12') -- 输出0
select convert(datetime,convert(varchar(10),getdate(),120)) select dateadd(day,datediff(day,0,getdate()),0)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
SQL ALTER TABLE 语句用于在现有表中添加、删除或修改列。有不少朋友对此感兴趣,下面小编给大家整理和分享了相关知识和资料,易于大家学习和理解,有需要的朋友可以借鉴参考,下面我们一起来了解一下吧。
sql server 2012 filetable有哪些功能?FileTable是基于FILESTREAM的一个特性,本文我们就来简单的了解一下FileTable,它的功能有以下这些:
在数据库查询中需要分组用到的命令短语是“GROUP BY”,“GROUP BY”短语用于对查询结果进行分组,可以利用它进行分组汇总,而“HAVING”短语不能脱离“GROUP BY”短语而独立存在。
SQL 中的 TRIM 函数是用来移除掉一个字串中的字头或字尾。最常见的用途是移除字首或字尾的空白。这个函数在不同的资料库中有不同的名称位置
这篇文章介绍了SQL SERVER常用日期与时间查询的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008