SQL Server中常用的日期时间函数
来源:互联网 发布:淘宝瑕疵大牌化妆品 编辑:程序博客网 时间:2024/06/05 17:19
日期时间函数可用在SELECT语句的选择列表或用在查询的WHERE子句中,下面将给出SQL Server中重用的日期时间函数。
由于排版问题,就没有将这些函数表格都贴上来。下面就这些日期时间函数做具体的使用。
1. GETDATE()获取到当前时间
按datetime值的SQL Server标准内部格式返回当前系统日期和时间。
select GETDATE()
在下方结果栏中显示
2016-05-14 12:00:51.737
2. DAY(),MONTH(),YEAR()函数中使用GETDATE()函数,用来返回当前时间的日、月、年
--DAY DAY ( date ) 返回表示指定 date 的“日”部分的整数。 int 具有确定性--MONTH MONTH ( date ) 返回表示指定 date 的“月”部分的整数。 int 具有确定性--YEAR YEAR ( date ) 返回表示指定 date 的“年”部分的整数。 int 具有确定性
--其日期值应在1753年到9999年之间--这是SQL Server系统所能识别的日期范围,否则会出现错误。
--函数GETDATE()获取到当前时间select DAY(GETDATE()) as '日' ,MONTH(GETDATE()) as '月' ,YEAR(GETDATE()) as '年'
14 5 2016
3.运用DATEPART函数,返回代表指定日期的指定日期部分的整数
--运用DATEPART函数,返回代表指定日期的指定日期部分的整数SELECT DATEPART(DAY , GETDATE()) as '日' ,DATEPART(MONTH , GETDATE()) as '月' ,DATEPART(YEAR , GETDATE()) as '年'
14 5 2016
4.用 DATEADD ()函数来获得下一个时间或之前的时间日期
DATEADD DATEADD (datepart , number , date ) 通过将一个时间间隔与指定 date 的指定 datepart 相加,返回一个新的 datetime 值。
--用 dateadd 来获得下一个时间或之前的时间日期 select GETDATE() as '获取当前时间' --获取当前时间 , DATEADD (DD , 1 , getdate()) as '当前时间的下一天' --当前时间的下一天 , DATEADD (MM , 1 , getdate()) as '当前时间的下一个月' --当前时间的下一个月 , DATEADD (YY , 1 , getdate()) as '当前时间的下一年' --当前时间的下一年 , DATEADD (DD , -1 , getdate()) as '当前时间的前一天' --当前时间的前一天 , DATEADD (MM , -1 , getdate()) as '当前时间的前一个月' --当前时间的前一个月 , DATEADD (YY , -1 , getdate()) as '当前时间的前一年' --当前时间的前一年
获取当前时间 2016-05-14 12:12:29.137 当前时间的下一天 2016-05-15 12:12:29.137 当前时间的下一个月 2016-06-14 12:12:29.137 当前时间的下一年 2017-05-14 12:12:29.137 当前时间的前一天 2016-05-13 12:12:29.137 当前时间的前一个月 2016-04-14 12:12:29.137当前时间的前一年 2015-05-14 12:12:29.137
5.DATEDIFF()函数。
DATEDIFF ( datepart , startdate , enddate ) 返回两个指定日期之间所跨的日期或时间 datepart 边界的数目。
SELECT DATEDIFF(DD,'2016-5-12',GETDATE()) as '相差天数' --时间差,返回日期 SELECT DATEDIFF(MM,'2016-4-12',GETDATE()) as '相差月份' --时间差,返回月份 SELECT DATEDIFF(YY,'2000-5-14',GETDATE()) as '相差年份' --时间差,返回年份2 1 16
6.DATENAME()函数。
DATENAME DATENAME ( datepart , date ) 返回表示指定日期的指定 datepart 的字符串。 nvarchar
SELECT DATENAME(year, GETDATE()) --年 ,DATENAME(month, GETDATE()) --月 ,DATENAME(day, GETDATE()) --日 ,DATENAME(week,GETDATE()) --星期 ,DATENAME(dayofyear, GETDATE()) --当前年份第多少天 ,DATENAME(weekday, GETDATE()); --星期
2016 05 14 20 135 星期六
同样DATENAME()函数还能够和GETDAY()函数一起用,GETDAY()函数大致个GETDATE()函数一样。
SELECT DATENAME(hour, GETDATE()) as '时' --当天的第几个小时 ,DATENAME(minute,GETDATE()) as '分' --当天小时的第几分 ,DATENAME(second, GETDATE()) as '秒'; --当天小时分钟的第几秒
时 分 秒12 24 19
7.T-SQL的日期时间函数。
--select GETDATE()--截取一个时间的年,月,日--函数GETDATE()获取到当前时间--select DAY(GETDATE()) as '日'-- ,MONTH(GETDATE()) as '月'-- ,YEAR(GETDATE()) as '年' --其日期值应在1753年到9999年之间 --这是SQL Server系统所能识别的日期范围,否则会出现错误。 --运用DATEPART函数,返回代表指定日期的指定日期部分的整数--SELECT DATEPART(DAY , GETDATE()) as '日'-- ,DATEPART(MONTH , GETDATE()) as '月'-- ,DATEPART(YEAR , GETDATE()) as '年' --用 dateadd 来获得下一个时间或之前的时间日期 --select GETDATE() as '获取当前时间' -- --获取当前时间 -- , DATEADD (DD , 1 , getdate()) as '当前时间的下一天' -- --当前时间的下一天 -- , DATEADD (MM , 1 , getdate()) as '当前时间的下一个月' -- --当前时间的下一个月 -- , DATEADD (YY , 1 , getdate()) as '当前时间的下一年' -- --当前时间的下一年 -- , DATEADD (DD , -1 , getdate()) as '当前时间的前一天' -- --当前时间的前一天 -- , DATEADD (MM , -1 , getdate()) as '当前时间的前一个月' -- --当前时间的前一个月 -- , DATEADD (YY , -1 , getdate()) as '当前时间的前一年' -- --当前时间的前一年 --SELECT DATEDIFF(DD,'2016-5-12',GETDATE()) as '相差天数' --时间差,返回日期 --SELECT DATEDIFF(MM,'2016-4-12',GETDATE()) as '相差月份' --时间差,返回月份 --SELECT DATEDIFF(YY,'2000-5-14',GETDATE()) as '相差年份' --时间差,返回年份--SELECT DATENAME(year, GETDATE()) --年-- ,DATENAME(month, GETDATE()) --月-- ,DATENAME(day, GETDATE()) --日-- ,DATENAME(week,GETDATE()) --星期-- ,DATENAME(dayofyear, GETDATE()) --当前年份第多少天-- ,DATENAME(weekday, GETDATE()); --星期--SELECT DATENAME(hour, GETDATE()) as '时' --当天的第几个小时-- ,DATENAME(minute,GETDATE()) as '分' --当天小时的第几分-- ,DATENAME(second, GETDATE()) as '秒'; --当天小时分钟的第几秒--函数 语法 返回值 返回数据类型 --DAY DAY ( date ) 返回表示指定 date 的“日”部分的整数。 int 具有确定性--MONTH MONTH ( date ) 返回表示指定 date 的“月”部分的整数。 int 具有确定性--YEAR YEAR ( date ) 返回表示指定 date 的“年”部分的整数。 int 具有确定性--DATENAME DATENAME ( datepart , date ) 返回表示指定日期的指定 datepart 的字符串。 nvarchar --DATEPART DATEPART ( datepart , date ) 返回表示指定 date 的指定 datepart 的整数。 int --DATEDIFF DATEDIFF ( datepart , startdate , enddate ) 返回两个指定日期之间所跨的日期或时间 datepart 边界的数目。 int 具有确定性--DATEADD DATEADD (datepart , number , date ) 通过将一个时间间隔与指定 date 的指定 datepart 相加,返回一个新的 datetime 值。 --ISDATE ISDATE ( expression ) 确定 datetime 或 smalldatetime 输入表达式是否为有效的日期或时间值。-- int 只有与 CONVERT 函数一起使用,同时指定了 CONVERT 样式参数且样式不等于 0、100、9 或 109 时,ISDATE 才是确定的。
注意:上面代码都注释了,用的时候撤销注释就行。
0 0
- SQL Server中常用的日期时间函数
- SQL Server中常用的日期时间函数
- sql server 中常用的日期函数
- SQL SERVER中关于日期时间的函数
- SQL中常用的的时间跟日期函数
- SQL Server中常用的特殊日期代码函数语句
- Sql Server的日期与时间函数
- Sql Server的日期格式化常用函数
- sql server日期时间函数
- sql server日期时间函数
- sql server日期时间函数
- sql server日期时间函数
- sql server日期时间函数
- sql server日期时间函数
- sql server日期时间函数
- sql server日期时间函数
- sql server日期时间函数
- sql server日期时间函数
- spring通知-BeforeAdvice和AfterReturningAdvice
- split()方法字符串拆分
- 我生命中的钱事:创业!
- 菜鸟级别的Shiro配置、使用案例(一)
- stl set的用法
- SQL Server中常用的日期时间函数
- Android中使用Gson解析JSON数据的方法
- 《机器学习实战》预测数值型数据-回归(Regression)
- 阿里云VPS_Ubuntu安装python Xpath插件
- iOS开发——Cocoapods的安装和使用
- 第九周项目3-人数不定的工资类
- 30分钟上手最火android网络请求框架Retrofit
- 动态规划
- 递归实现二叉搜索树建立