SQL Server日期相关小结

一、日期/时间函数
1.当前系统日期、时间

 select GETDATE()  → 2012-02-24 19:08:40.573

2.DATEADD 在给定时间上增加一段时间,返回datetime

 select DATEADD(DAY, 1, GETDATE())  → 2012-02-25 19:10:15.817

3.DATEDIFF 返回两个日期的日期的事件差。 

select DATEDIFF(DAY,'2012-02-14',GETDATE())  → 10

4.DATEPART 返回给定日期的指定日期部分的整数表示。 

select DATEPART(MONTH, GETDATE())  → 2

5.DATENAME 返回给定日期的指定日期部分字符串表示。

select DATENAME(MONTH, GETDATE())  → 02

 6.YEAR(),MONTH(),DAY(),等同于DATEPART

select MONTH(GETDATE())  → 2

 7.时间缩写 

时间缩写
缩写 含义 值范围
YEAR、YY、YYYY  
QUARTER、QQ、Q 季度 1~4
MONTH、MM、M 1~12
DAYOFYEAR、DY、Y 天,一年中的第几天 1~366
DAY、DD、D 1~31
WEEKDAY、DW、W 星期几 星期一~星期日
WEEK、WK、WW 周,一年中的第几周 1~53
HOUR、 HH、 H 0~59
MINUTE、MI、N 0~59
SECOND、SS、S 0~59
MILLISECOND、MS 毫秒 0~999
NANOSECOND、NS 纳秒  


以下缩写含义可以参照MSDN的联机文档
http://msdn.microsoft.com/zh-cn/library/ms186724.aspx
ISO_WEEK、ISOWK、ISOWW
MCS、MICROSECOND
TZ、TZOFFSET

二、日期时间转换为字符串后的结果格式。

select CONVERT(varchar(100), GETDATE(), 0)   → 02 24 2012 6:46PM    
select CONVERT(varchar(100), GETDATE(), 1)   → 02/24/12    
select CONVERT(varchar(100), GETDATE(), 2)   → 12.02.24    
select CONVERT(varchar(100), GETDATE(), 3)   → 24/02/12    
select CONVERT(varchar(100), GETDATE(), 4)   → 24.02.12    
select CONVERT(varchar(100), GETDATE(), 5)   → 24-02-12    
select CONVERT(varchar(100), GETDATE(), 6)   → 24 02 12    
select CONVERT(varchar(100), GETDATE(), 7)   → 02 24,12     
select CONVERT(varchar(100), GETDATE(), 8)   → 18:49:43    
select CONVERT(varchar(100), GETDATE(), 9)   → 02 24 2012 6:50:15:309PM    
select CONVERT(varchar(100), GETDATE(), 10)  → 02-24-12    
select CONVERT(varchar(100), GETDATE(), 11)  → 12/02/24    
select CONVERT(varchar(100), GETDATE(), 12)  → 120224    
select CONVERT(varchar(100), GETDATE(), 13)  → 24 02 2012 18:52:25:223    
select CONVERT(varchar(100), GETDATE(), 14)  → 18:53:08:357    
select CONVERT(varchar(100), GETDATE(), 20)  → 2012-02-24 18:53:38    
select CONVERT(varchar(100), GETDATE(), 21)  → 2012-02-24 18:54:32.087    
select CONVERT(varchar(100), GETDATE(), 22)  → 02/24/12 6:56:41 PM    
select CONVERT(varchar(100), GETDATE(), 23)  → 2012-02-24    
select CONVERT(varchar(100), GETDATE(), 24)  → 18:54:52    
select CONVERT(varchar(100), GETDATE(), 25)  → 2012-02-24 18:57:13.530    
select CONVERT(varchar(100), GETDATE(), 100) → 02 24 2012 6:58PM    
select CONVERT(varchar(100), GETDATE(), 101) → 02/24/2012    
select CONVERT(varchar(100), GETDATE(), 102) → 2012.02.24    
select CONVERT(varchar(100), GETDATE(), 103) → 24/02/2012    
select CONVERT(varchar(100), GETDATE(), 104) → 24.02.2012    
select CONVERT(varchar(100), GETDATE(), 105) → 24-02-2012    
select CONVERT(varchar(100), GETDATE(), 106) → 24 02 2012    
select CONVERT(varchar(100), GETDATE(), 107) → 02 24,2012    
select CONVERT(varchar(100), GETDATE(), 108) → 19:01:35    
select CONVERT(varchar(100), GETDATE(), 109) → 02 24 2012 7:01:58:820PM    
select CONVERT(varchar(100), GETDATE(), 110) → 02-24-2012    
select CONVERT(varchar(100), GETDATE(), 111) → 2012/02/24    
select CONVERT(varchar(100), GETDATE(), 112) → 20120224    
select CONVERT(varchar(100), GETDATE(), 113) → 24 02 2012 19:03:41:357    
select CONVERT(varchar(100), GETDATE(), 114) → 19:04:08:013    
select CONVERT(varchar(100), GETDATE(), 120) → 2012-02-24 19:05:02    
select CONVERT(varchar(100), GETDATE(), 121) → 2012-02-24 19:05:18.747    
select CONVERT(varchar(100), GETDATE(), 126) → 2012-02-24T19:05:39.697    
select CONVERT(varchar(100), GETDATE(), 130) → 2 ???? ?????? 1433 7:06:19:560PM

猜你喜欢

转载自zlj214.iteye.com/blog/1423350