MSSQL获取日期的各种格式与各个部分
来源:互联网 发布:计算机算法基础第三版 编辑:程序博客网 时间:2024/05/16 11:38
在本文中,GetDate()获得的日期由两部分组成,分别是今天的日期和当时的时间: Select GetDate()
用DateName()就可以获得相应的年、月、日,然后再把它们连接起来就可以了:
年 月 日部分还可以用过year(getdate()) 、month(getdate()) 、day(getdate()) 去获取。
Select Datename(year,GetDate())+'-'+Datename
(month,GetDate())+'-'+Datename(day,GetDate())
另外,DateName()还可以获得到小时、时间、秒、星期几、第几周,分别如下:
Select Datename(hour,GetDate())
Select Datename(minute,GetDate())
Select Datename(second,GetDate())
Select Datename(weekDay,GetDate())
Select Datename(week,GetDate())
SQL中的日期类型DateTime的默认格式就是yyyy-mm-dd hh:mi:ss: mmm,可大多数的情况我们只想得到他的日期部分,而不许要后面的时间。上一篇中提到用Datename()函数来截取拼接出不包含时间部分的日期,现在再说一种方法,更加简单的获取到不包含时间的日期!
使用Convert()函数:
select convert(char(10),GetDate(),120) as Date
* 第3个参数就是用来设置日期类型数据的显示样式的,下面介绍几种样式的参数:
100 mm dd yyyy
101 mm/dd/yyyy
102 yyyy.mm.dd
103 dd/mm/yyyy
106 dd mm yyyy
108 hh:mi:ss(时间)
111 yyyy/mm/dd
112 yyyymmdd
120 yyyy-mm-dd
1 SELECT CONVERT(varchar(100),GETDATE(),0)05920119:12AM
2 SELECTCONVERT(varchar(100),GETDATE(),1)05/09/11
3 SELECTCONVERT(varchar(100),GETDATE(),2)11.05.09
4 SELECTCONVERT(varchar(100),GETDATE(),3)09/05/11
5 SELECTCONVERT(varchar(100),GETDATE(),4)09.05.11
6 SELECTCONVERT(varchar(100),GETDATE(),5)09-05-11
7 SELECTCONVERT(varchar(100),GETDATE(),6)090511
8 SELECTCONVERT(varchar(100),GETDATE(),7)0509,11
9 SELECTCONVERT(varchar(100),GETDATE(),8)09:13:14
10 SELECTCONVERT(varchar(100),GETDATE(),9)05920119:13:14:670AM
11 SELECTCONVERT(varchar(100),GETDATE(),10)05-09-11
12 SELECTCONVERT(varchar(100),GETDATE(),11)11/05/09
13 SELECTCONVERT(varchar(100),GETDATE(),12)110509
14 SELECTCONVERT(varchar(100),GETDATE(),13)0905201109:13:14:670
15 SELECTCONVERT(varchar(100),GETDATE(),14)09:13:14:670
16 SELECTCONVERT(varchar(100),GETDATE(),20)2011-05-0909:13:14
17 SELECTCONVERT(varchar(100),GETDATE(),21)2011-05-0909:13:14.670
18 SELECTCONVERT(varchar(100),GETDATE(),22)05/09/119:15:33 AM
19 SELECTCONVERT(varchar(100),GETDATE(),23)2011-05-09
20 SELECTCONVERT(varchar(100),GETDATE(),24)09:15:33
21 SELECTCONVERT(varchar(100),GETDATE(),25)2011-05-0909:15:33.140
22 SELECTCONVERT(varchar(100),GETDATE(),100)05920119:15AM
23 SELECTCONVERT(varchar(100),GETDATE(),101)05/09/2011
24 SELECTCONVERT(varchar(100),GETDATE(),102)2011.05.09
25 SELECTCONVERT(varchar(100),GETDATE(),103)09/05/2011
26 SELECTCONVERT(varchar(100),GETDATE(),104)09.05.2011
27 SELECTCONVERT(varchar(100),GETDATE(),105)09-05-2011
28 SELECTCONVERT(varchar(100),GETDATE(),106)09052011
29 SELECTCONVERT(varchar(100),GETDATE(),107)0509,2011
30 SELECTCONVERT(varchar(100),GETDATE(),108)09:16:38
31 SELECTCONVERT(varchar(100),GETDATE(),109)05920119:16:38:543AM
32 SELECTCONVERT(varchar(100),GETDATE(),110)05-09-2011
33 SELECTCONVERT(varchar(100),GETDATE(),111)2011/05/09
34 SELECTCONVERT(varchar(100),GETDATE(),112)20110509
35 SELECTCONVERT(varchar(100),GETDATE(),113)0905201109:17:19:857
36 SELECTCONVERT(varchar(100),GETDATE(),114)09:17:19:857
37 SELECTCONVERT(varchar(100),GETDATE(),120)2011-05-0909:17:19
38 SELECTCONVERT(varchar(100),GETDATE(),121)2011-05-0909:17:19.857
39 SELECTCONVERT(varchar(100),GETDATE(),126)2011-05-09T09:17:19.857
40 SELECTCONVERT(varchar(100),GETDATE(),130)6 ????? ???????14329:17:19:857AM
41 SELECTCONVERT(varchar(100),GETDATE(),131)6/06/14329:17:19:857AM
SQL中取日期的小时
返回表示指定日期的指定日期部分的整数。
语法
DATEPART ( datepart , date )
参数
datepart
指定要返回的日期部分的参数。有关详细信息,请参阅本主题后面的“备注”部分。
date
返回 datetime 值(或可隐式转换为 datetime 值的值)的表达式。date 参数也可以是日期格式的字符串。datetime 数据类型仅用于 1753 年 1 月 1 日之后的日期。 对于之前的日期,将存储为字符数据。在输入 datetime 值时,请始终使用单引号将它们括起来。
如果只指定年份的后两位数字,小于或等于两位截止年份配置选项值的后两位数字的值将与截止年份处于同一世纪中。比此选项值的后两位数字大的值先于截止年份的世纪。例如,如果两位数字的截止年份是 2049(默认值),则“49”将被解释为 2049,而“50”将被解释为 1950。为了避免产生歧义,请使用四位年份。
有关指定日期的详细信息,请参阅数据类型中的 datetime。
返回值
int
备注
下表列出了 Microsoft SQL Server 2005 Mobile Edition 可识别的 datepart 选项和缩写:
日期部分 缩写
年份 yy、yyyy
季度 qq、q
月份 mm、m
每年的某一日 dy、y
日期 dd、d
星期 wk、ww
工作日 dw
小时 hh
分钟 mi、n
秒 ss、s
毫秒 ms
sql获取本周,本月,本季度
本周:select * from table where datediff(week,C_CALLTIME,getdate())=0 --C_CALLTIME 为日期字段
本月:select * from table where datediff(Month,C_CALLTIME,getdate())=0 --C_CALLTIME 为日期字段
本季:select * from table where datediff(qq,C_CALLTIME,getdate())=0
前半年1-6,后半年7-12:select * from table where datepart(mm,C_CALLTIME)/7 = datepart(mm,getdate())/7
- MSSQL获取日期的各种格式与各个部分
- MSSQL获取当前日期及格式
- Java各种日期格式的获取和设置指定日期
- .net获取日期时间的各种格式的函数
- asp.net 获取日期格式的各种函数
- C#中日期运算以及获取日期的各种格式
- MsSql常用日期格式
- MSSQL 日期格式
- SQL Server获取日期,各种格式
- JS获取当前各种日期格式
- java获取各种格式的时间,获取昨天明天日期,获取一天的开始结束时间
- 判断日期的日期部分格式
- C++ 获取路径的各个部分
- javascript获取时间的各个部分
- 日期格式的其他获取
- PHP获取当前时间、时间戳的各种格式写法汇总[日期时间]
- PHP获取当前时间、时间戳的各种格式写法汇总[日期时间]
- PHP获取当前时间、时间戳的各种格式写法汇总[日期时间]
- UNIX UMASK命令
- 深入探讨C++中的引用
- 自己动手写Python实现Ubuntu自动切换壁纸
- 自动生成控制文件及数据文件并完成sqlldr的自动导入
- JDK5中的concurrent包简介
- MSSQL获取日期的各种格式与各个部分
- Visual Studio 2008 +Opencv230下的配置关键步骤
- js事件列表
- 磁盘相关
- android binder driver (IPC) 『本文来源:http://hi.baidu.com/tianylj/blog/item/7b99f42abeb77d81023bf636.ht』
- 利用 JConsole观察分析Java程序的运行进行排错调优
- thinkphp关于模板日期的写法
- DrawImage函数---旋转、反射和扭曲图像
- Excel操作大全