SqlServer时间函数的使用例子整理

整理sqlServer2008的时间函数如下:
1.获取系统时间
select getdate();           --2012-05-06 22:26:49.950
select current_timestamp;   --2012-05-06 22:26:49.950
select getutcdate();        --2012-05-06 14:26:49.950 UTC时间

--更精确的系统时间
select SYSDATETIME();       --2012-05-06 22:26:49.9531250
select SYSUTCDATETIME();    --2012-05-06 14:26:49.9531250   UTC时间
select SYSDATETIMEOFFSET(); --2012-05-06 22:26:49.9531250 +08:00

2.获取时间部分值例子
select convert(date,getdate());  --2012-05-06
select convert(time,getdate());  --22:31:10.4200000

select datepart(yyyy,getdate());    --2012
select datepart(month,gatedate());  --5
select datepart(day,getdate());     --6
select datepart(week,getdate());    --19

select datename(yyyy,getdate());    --2012
select datename(month,gatedate());  --05
select datename(day,getdate());     --6
select datename(week,getdate());    --19

--datepart返回值是整型(int)
--datename返回值是字符串型(nvarhar)

3.时间计算
--加3天,+3,减3天,-3即可
select getdate()+3;                   --2012-05-09 22:31:50.345
select dateadd(day,-3,'2012-05-03');  --2012-05-03 00:00:00.000

--dateadd返回的是date参数对应的类型

4.时间差值计算
select DATEDIFF(DAY,'2012-05-03',GETDATE())   --3,表示相隔3天
select DATEDIFF(month,'2012-03-03',GETDATE()) --2,表示相隔2月
--datediff返回的是int值
Fun1: DATEADD (datepart,number,date)
datepart选项值如下:
depart       缩写
year         yy,yyyy
quarter      qq,q
month        mm,m
dayofyear    dy,y
day          dd,d
week         wk,ww
weekday      dw,w
hour         hh 
minute       mi,n
second       ss,s
millisecond  ms 
microsecond  mcs 
nanosecond   ns

Func2:DATEDIFF(datepart,startdate,enddate)
datepart    缩写
year        yy,yyyy 
quarter     qq,q  
month       mm,m 
dayofyear   dy,y  
day         dd,d  
week        wk,ww 
hour        hh  
minute      mi,n 
second      ss,s  
millisecond  ms  
microsecond  mcs  
nanosecond   ns 

Func3:DATEPART(datepart,date)
datepart   缩写  
year       yy,yyyy 
quarter    qq,q 
month      mm,m 
dayofyear  dy,y 
day        dd,d 
week       wk,ww 
weekday    dw  
hour       hh  
minute     mi,n  
second     ss,s 
millisecond  ms  
microsecond  mcs  
nanosecond   ns  
TZoffset     tz 
ISO_WEEK     isowk,isoww

Func4:DATENAME(datepart,date)
datename中datepart值基本等同于datepart函数,只是返回值是nvarchar类型
--参考Microsoft Document Explore of Transact-sql

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...