SQL 时间函数 Datepart()与DateName()
1.Datepart()
返回代表指定日期的指定日期部分的整数
语法 Datepart(datepart,date)
返回类型 int
datepart:
| 日期部分 | 缩写 |
|---|---|
| year | yy, yyyy |
| quarter | qq, q |
| month | mm, m |
| dayofyear | dy, y |
| day | dd, d |
| week | wk, ww |
| weekday | dw日期部分返回对应于星期中的某天的数,例如:Sunday =1 |
| Hour | hh |
| minute | mi, n |
| second | ss, s |
| millisecond | ms |
declare @date datetime
set @date='2009-12-24 16:35:37.733'
select datepart(year,@date)--2009
select datepart(month,@date)--12
select datepart(day,@date)--24
select datepart(quarter,@date)--4
select datepart(dayofyear,@date)--358
select datepart(weekday,@date)--5
select datepart(week,@date)--52
select datepart(Hour,@date)--16
select datepart(minute,@date)--35
2.DateName()
返回代表指定日期的指定日期部分的字符串
语法 DateName(datepart , date )
返回类型 nvarchar
参数 datepart 同上表格
declare @date datetime
set @date='2009-12-24 16:35:37.733'
select datename(year,@date)--2009
select datename(month,@date)--December
select datename(day,@date)--24
select datename(quarter,@date)--4
select datename(dayofyear,@date)--358
select datename(weekday,@date)--Thursday
select datename(week,@date)--52
select datename(Hour,@date)--16
select datename(minute,@date)--35
3.其他日期函数
declare @date1 datetime,@date2 datetime
set @date1='2009-10-24 16:35:37.733'
set @date2='2009-12-24 16:35:37.733'
select DAY(@date1)--24
select MONTH(@date1)--10 具有确定性
select YEAR (@date1)--2009具有确定性
select DATEPART (dw, @date2)
select GETDATE() 不具有确定性
select GETUTCDATE() 不具有确定性
DATENAME() 不具有确定性
DATEADD(dd,@date1,1) 具有确定性
DATEDIFF 具有确定性
DATEPART 除了用作
DATEPART (dw, date) 外都具有确定性。dw 是工作日的日期部分,取决于由设置每周第一天的 SET DATEFIRST所设置的值。
具有确定性
--判断是否为时间
selectcast(isdate('2012-06-02 16:26:07.880') asvarchar)
--获得年
select cast(year('2012-06-0216:26:07.880') as varchar)
selectdatepart(yyyy,'2012-06-02 16:26:07.880')
selectdatename(yyyy,'2012-06-02 16:26:07.880')
--获得月
select cast(Month('2012-06-0216:26:07.880') as varchar)
selectdatepart(mm,'2012-06-02 16:26:07.880')
selectdatename(mm,'2012-06-02 16:26:07.880')
--获得日
select cast(day('2012-06-0216:26:07.880') as varchar)
selectdatepart(dd,'2012-06-02 16:26:07.880')
selectdatename(dd,'2012-06-02 16:26:07.880')
--获得时
selectdatepart(hh,'2012-06-02 16:26:07.880')
selectdatename(hh,'2012-06-02 16:26:07.880')
--获得分
select datepart(n,'2012-06-0216:26:07.880')
select datename(n,'2012-06-0216:26:07.880')
--获得秒
selectdatepart(ss,'2012-06-02 16:26:07.880')
selectdatename(ss,'2012-06-02 16:26:07.880')
--毫秒
selectdatepart(ms,'2012-06-02 16:26:07.880')
selectdatename(ms,'2012-06-02 16:26:07.880')
--季节
selectdatepart(qq,'2012-06-02 16:26:07.880')
selectdatename(qq,'2012-06-02 16:26:07.880')
--一年中的第几天
selectdatepart(dy,'2012-06-02 16:26:07.880')
selectdatename(dy,'2012-06-02 16:26:07.880')
--一年中的第几周
selectdatepart(wk,'2012-06-02 16:26:07.880')
selectdatename(wk,'2012-06-02 16:26:07.880')
--星期
selectdatepart(dw,'2012-06-02 16:26:07.880') --SET DATEFIRST 7每周第一天
selectdatename(dw,'2012-06-02 16:26:07.880')
SQL 时间函数 Datepart()与DateName()的更多相关文章
- Sql时间函数
一.sql server日期时间函数 Sql Server中的日期与时间函数 1. 当前系统日期.时间 select getdate() 2. dateadd 在向指定日期加上一段时间 ...
- sql 时间函数大全
1. 当前系统日期.时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值 例如:向日期加上2天 se ...
- 几个常用的SQL 时间函数
--当月第一天declare @startFirstDate datetimeset @startFirstDate=dateadd(dd,datediff(dd,0,getdate()),-day( ...
- sql 时间函数用法
v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...
- Oracle常用SQL时间函数
1.查询当前日期和时间 select sysdate from dual; 2.查询本月最后一天 select last_day(sysdate) from dual; 3.查询前后多少月 ) fro ...
- sql server 系统常用函数:聚合函数 数学函数 字符串函数 日期和时间函数和自定义函数
一.系统函数 1.聚合函数 聚合函数常用于GROUP BY子句,在SQL Server 2008提供的所有聚合函数中,除了COUNT函数以外,聚合函数都会忽略空值AVG.COUNT.COUNT_BIG ...
- SQL Server 日期函数:EOMonth、DateFormat、Format、DatePart、DateName
一,月份的最后一天 函数 EOMonth 返回指定日期的最后一天 EOMONTH ( start_date [, month_to_add ] ) 1,对于start_date 有两种输入方式,能够转 ...
- ylb:SQL Server中的时间函数
ylbtech-SQL Server:SQL Server-SQL Server中的时间函数 SQL Server中的时间函数. 1,SQL Server中的时间函数 返回顶部 1. 当前系统日期 ...
- SQL SERVER时间函数
本篇文章还是学习<程序员的SQL金典>内容的记录,此次将讲解的是SQL SERVER的时间函数. 本文只讲SQL SERVER支持的时间函数(其它数据库这里就不罗列了,想看更多的可以关注& ...
随机推荐
- 从request获取各种路径总结
一.获得都是当前运行文件在服务器上的绝对路径 在servlet里用: this.getServletContext().getRealPath() 在struts用: this.getServlet( ...
- 老司机的应用级监控——spring?actuator
http://mt.sohu.com/20160824/n465783118.shtml ************************************************ 1什么是sp ...
- 文件IO之——阻塞和非阻塞及perror函数
读常规文件是不会阻塞的,不管读多少字节,read一定会在有限的时间内返回.从终端设备或网络读则不一定,如果从终端输入的数据没有换行符,调用read读终端设备就会阻塞,如果网络上没有接收到数据包,调用r ...
- k8s入门
一个目标:容器操作:两地三中心:四层服务发现:五种Pod共享资源:六个CNI常用插件:七层负载均衡:八种隔离维度:九个网络模型原则:十类IP地址:百级产品线:千级物理机:万级容器:相如无亿,K8s有亿 ...
- FXGameEngine
最初是在 http://jayskills.com/ 这个网站发现的,但一直未找到源码,今天偶然发现其源码位于 https://github.com/eppleton/FXGameEngine 下载, ...
- Respond.js – 让不懂爱的 IE6-8 支持 CSS3 Media Query
respond.min.js <script src="js/respond.min.js"></script> respond.min.js代码: /*! ...
- easyui换主题,并记录在cookie
首先将easyui的样式文件加入一个ID,这里命名为easyuiTheme,然后在样式文件下面加入一个JS文件 <script type="text/javascript" ...
- 目标跟踪之卡尔曼滤波---理解Kalman滤波的使用
http://www.cnblogs.com/jcchen1987/p/4371439.html
- Flea Circus(Project Euler 213)
original version hackerrank programming version 题目大意是N*N的格子,每个格子一开始有1个跳蚤,每过单位时间跳蚤会等概率向四周跳,问M秒后空格子的期望 ...
- 【Raspberry Pi】修改时区
Raspberry Pi没有时钟模块,所以每次断电都会丢失时间,但它有联网获取时间的预设.但要修改默认时区 http://outofmemory.cn/code-snippet/2899/shumei ...