一、sql server日期时间函数
Sql Server中的日期与时间函数 
1.  当前系统日期、时间 
    select getdate()  

2. dateadd  在向指定日期加上一段时间的基础上,返回新的 datetime 值
   例如:向日期加上2天 
   select dateadd(day,2,'2004-10-15')  --返回:2004-10-17 00:00:00.000 

3. datediff 返回跨两个指定日期的日期和时间边界数。
   select datediff(day,'2004-09-01','2004-09-18')   --返回:17

4. datepart 返回代表指定日期的指定日期部分的整数。
  select DATEPART(month, '2004-10-15')  --返回 10

5. datename 返回代表指定日期的指定日期部分的字符串
   select datename(weekday, '2004-10-15')  --返回:星期五

6. day(), month(),year() --可以与datepart对照一下

select 当前日期=convert(varchar(10),getdate(),120) 
,当前时间=convert(varchar(8),getdate(),114) 

select datename(dw,'2004-10-15') 

select 本年第多少周=datename(week,'2004-10-15')
      ,今天是周几=datename(weekday,'2004-10-15')

二、日期格式转换

 1 --*****************************************
 2 SELECT CONVERT(varchar(100), GETDATE(), 0)      -- 05 16 2006 10:57AM
 3 Select CONVERT(varchar(100), GETDATE(), 1)      -- 05/16/06
 4 Select CONVERT(varchar(100), GETDATE(), 2)      -- 06.05.16
 5 Select CONVERT(varchar(100), GETDATE(), 3)      -- 16/05/06
 6 Select CONVERT(varchar(100), GETDATE(), 4)      -- 16.05.06
 7 Select CONVERT(varchar(100), GETDATE(), 5)      -- 16-05-06
 8 Select CONVERT(varchar(100), GETDATE(), 6)      -- 16 05 06
 9 Select CONVERT(varchar(100), GETDATE(), 7)      -- 05 16, 06
10 Select CONVERT(varchar(100), GETDATE(), 8)      -- 10:57:46
11 Select CONVERT(varchar(100), GETDATE(), 9)      -- 05 16 2006 10:57:46:827AM
12 Select CONVERT(varchar(100), GETDATE(), 10)     -- 05-16-06
13 Select CONVERT(varchar(100), GETDATE(), 11)     -- 06/05/16
14 Select CONVERT(varchar(100), GETDATE(), 12)     -- 060516
15 Select CONVERT(varchar(100), GETDATE(), 13)     -- 16 05 2006 10:57:46:937
16 Select CONVERT(varchar(100), GETDATE(), 14)     -- 10:57:46:967
17 Select CONVERT(varchar(100), GETDATE(), 20)     -- 2006-05-16 10:57:47
18 Select CONVERT(varchar(100), GETDATE(), 21)     -- 2006-05-16 10:57:47.157
19 Select CONVERT(varchar(100), GETDATE(), 22)     -- 05/16/06 10:57:47 AM
20 Select CONVERT(varchar(100), GETDATE(), 23)     -- 2006-05-16
21 Select CONVERT(varchar(100), GETDATE(), 24)     -- 10:57:47
22 Select CONVERT(varchar(100), GETDATE(), 25)     -- 2006-05-16 10:57:47.250
23 Select CONVERT(varchar(100), GETDATE(), 100)    -- 05 16 2006 10:57AM a
24 Select CONVERT(varchar(100), GETDATE(), 101)    -- 05/16/2006
25 Select CONVERT(varchar(100), GETDATE(), 102)    -- 2006.05.16
26 Select CONVERT(varchar(100), GETDATE(), 103)    -- 16/05/2006
27 Select CONVERT(varchar(100), GETDATE(), 104)    -- 16.05.2006
28 Select CONVERT(varchar(100), GETDATE(), 105)    -- 16-05-2006
29 Select CONVERT(varchar(100), GETDATE(), 106)    -- 16 05 2006
30 Select CONVERT(varchar(100), GETDATE(), 107)    -- 05 16, 2006
31 Select CONVERT(varchar(100), GETDATE(), 108)    -- 10:57:49
32 Select CONVERT(varchar(100), GETDATE(), 109)    -- 05 16 2006 10:57:49:437AM
33 Select CONVERT(varchar(100), GETDATE(), 110)    -- 05-16-2006
34 Select CONVERT(varchar(100), GETDATE(), 111)    -- 2006/05/16
35 Select CONVERT(varchar(100), GETDATE(), 112)    -- 20060516
36 Select CONVERT(varchar(100), GETDATE(), 113)    -- 16 05 2006 10:57:49:513
37 Select CONVERT(varchar(100), GETDATE(), 114)    -- 10:57:49:547
38 Select CONVERT(varchar(100), GETDATE(), 120)    -- 2006-05-16 10:57:49
39 Select CONVERT(varchar(100), GETDATE(), 121)    -- 2006-05-16 10:57:49.700
40 Select CONVERT(varchar(100), GETDATE(), 126)    -- 2006-05-16T10:57:49.827
41 Select CONVERT(varchar(100), GETDATE(), 130)    -- 18 ???? ?????? 1427 10:57:49:907AM
View Code
 
 
函数 参数/功能
GetDate( )  返回系统目前的日期与时间
DateDiff (interval,date1,date2) 以interval 指定的方式,返回date2 与date1两个日期之间的差值 date2-date1
DateAdd (interval,number,date) 以interval指定的方式,加上number之后的日期
DatePart (interval,date) 返回日期date中,interval指定部分所对应的整数值
DateName (interval,date) 返回日期date中,interval指定部分所对应的字符串名称

参数 interval的设定值如下:

缩 写(Sql Server) Access 和 ASP 说明
Year Yy yyyy 年 1753 ~ 9999
Quarter Qq q   季 1 ~ 4
Month Mm m   月1 ~ 12
Day of year Dy 一年的日数,一年中的第几日 1-366
Day Dd d   日,1-31
Weekday Dw w 一周的日数,一周中的第几日 1-7
Week Wk ww  周,一年中的第几周 0 ~ 51
Hour Hh h   时0 ~ 23
Minute Mi 分钟0 ~ 59
Second Ss s 秒 0 ~ 59
Millisecond Ms - 毫秒 0 ~ 999

 

posted on 2017-03-14 15:54  幻影K  阅读(126)  评论(0编辑  收藏  举报