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支持的时间函数(其它数据库这里就不罗列了,想看更多的可以关注& ...
随机推荐
- CCNA2.0笔记_VLSM
子网化:把一个大的主类网段,通过借位的方式逻辑划分多个子网段,应用于多个广播域: 做子网划分的时候,子网掩码最多只能到30位,不能再多划(因为至少要保留4个地址,即2个主机位) FLSM(定长子网掩码 ...
- 在Ubuntu中安装mongodb
# 下载密钥文件 sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 gpg: 下载密钥‘7F0CEB ...
- pycharm 社区版
这个是免费版.到3.1.13 http://pan.baidu.com/s/1bnvPdtt 没用过idea的商业版,不知道为什么它的更新那么蛋疼,不能增量更新,每次都得手动下载完整的压缩包.
- nodejs对文件进行分页
//从文件中提取文件指从x行到y行的内容 //awk -v start=5 -v end=10 -F "\x01" '{if(NR>=start && NR& ...
- 关于OutputStream的write方法FAQ(from bbs.csdn.net)
问: Java code ? 1 2 3 4 5 6 7 8 9 10 11 FileInputStream fis = new FileInputStream(new File("C:\\ ...
- MySQL集群系列2:通过keepalived实现双主集群读写分离
在上一节基础上,通过添加keepalived实现读写分离. 首先关闭防火墙 安装keepalived keepalived 2台机器都要安装 rpm .el6.x86_64/ 注意上面要替换成你的内核 ...
- 远程sql 同步程序
exec sp_configure 'show advanced options',1reconfigureexec sp_configure 'Ad Hoc Distributed Queries' ...
- 第二百三十四节,Bootstrap表单和图片
Bootstrap表单和图片 学习要点: 1.表单 2.图片 本节课我们主要学习一下 Bootstrap 表单和图片功能,通过内置的 CSS 定义,显示各 种丰富的效果. 一.表单 Bootstrap ...
- 【BZOJ】1656:[Usaco2006 Jan]The Grove 树木(bfs+特殊的技巧)
http://www.lydsy.com/JudgeOnline/problem.php?id=1656 神bfs! 我们知道,我们要绕这个联通的树林一圈. 那么,我们想,怎么才能让我们的bfs绕一个 ...
- 非阻塞IO 和阻塞IO【转】
IO模式设置网络编程常见问题总结—IO模式设置,阻塞与非阻塞的比较,recv参数对性能的影响—O_NONBLOCK(open使用).IPC_NOWAIT(msgrcv).MSG_DONTWAIT(re ...