欢迎光临
个人知识库,ERP、IT知识分享和应用

Sql Server 获取当前日期

1. 获取当前日期

select GETDATE()

格式化:

select CONVERT(varchar,GETDATE(),120) –2017-05-12 16:33:10

2. 获取当前年  –2017

select DATENAME(YYYY,GETDATE()) –2017

select DATENAME(YEAR,GETDATE()) –2017

select DATEPART(YYYY,GETDATE()) –2017

select DATEPART(YEAR,GETDATE()) –2017

select YEAR(GETDATE())–2017

3.获取当前月 –05或5

select DATENAME(MM,GETDATE()) –05
select DATENAME(MONTH,GETDATE()) –05

select DATEPART(MM,GETDATE()) –5
select DATEPART(MONTH,GETDATE()) –5

select MONTH(GETDATE()) –5

4.获取当前日期 –07或7

select DATENAME(DAY,GETDATE()-5) –7
select DATENAME(D,GETDATE()-5) –7
select DATENAME(DD,GETDATE()-5) –7

select DATEPART(D,GETDATE()-5) –7
select DATEPART(DD,GETDATE()-5) –7
select DATEPART(DAY,GETDATE()-5) –7

select DAY(GETDATE()-5)

5. 获取当前年月 –201705

select CONVERT(varchar(6),GETDATE(),112) –201705

select CONVERT(varchar(7),GETDATE(),120) –2017-05

6.获取当前年月日 –20170512

select CONVERT(varchar(8),GETDATE(),112) –20170512

select CONVERT(varchar(10),GETDATE(),120) –2017-05-12

7.日期相关函数整理:

GETDATE() :获取当前时间,时间格式默认。

DATENAME:参数为两个,取值区间 interval 和时间 date

date 就是时间;

interval  包括 年,月,日,星期等

e.g:

YEAR 年;YYYY 年;YY 年;
QUARTER 季度;QQ 季度 ;Q 季度;
MONTH 月(05);MM 月(05);M 月(05);
WEEKDAY 星期几;DW 星期几;W 星期几;
WEEK 一年的第几周;WK 一年的第几周;WW 一年的第几周;ISOWK 一年的第几周;ISOWW 一年的第几周;ISO_WEEK 一年的第几周;
DAY 天;DD 天;D 天;
DAYOFYEAR 一年的第几天;DY 一年的第几天;Y 一年的第几天;
HOUR 小时;HH 小时;
MINUTE 分钟;MI 分钟;N 分钟;
SECOND 秒;SS 秒;S 秒;
MCS 微秒(略);MICROSECOND 微秒(略);MILLISECOND 毫秒(略);MS 毫秒(略) ; NANOSECOND 十亿分之一秒(略);NS 十亿分之一秒(略);

DATEPART:参数参考DATENAME,不过返回值不一样,DATENAME返回varchar,DATEPART返回int

CONVERT 函数转换格式:主要注意第三个参数 date_style ;格式:select CONVERT(varchar,GETDATE(),0)

最后的 date_style 可以有 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,100,

101,102,103,104,105,106,107,108,109,110,111,112,113,114,120,121,126,127,130,131等

常用的 20,23,24,102,111,112,120等;

示例:

select CONVERT(varchar,GETDATE(),20)  –2017-05-12 17:22:22
select CONVERT(varchar,GETDATE(),23)  –2017-05-12
select CONVERT(varchar,GETDATE(),24)  –17:23:42
select CONVERT(varchar,GETDATE(),102) –2017.05.12
select CONVERT(varchar,GETDATE(),111) –2017/05/12
select CONVERT(varchar,GETDATE(),112) –20170512

字符串转日期:select CONVERT(datetime,’2017-05-12′,20) 第三个参数参考以上。

未经允许不得转载:Blog.XiaoMing.Xyz » Sql Server 获取当前日期

登录

找回密码

注册