代码改变世界

SQL Server DATEPART() 、Datediff()、Year()、month()、Day()函数的用法解析

2012-02-29 22:12  AceYue  阅读(5987)  评论(0编辑  收藏  举报

一、SQL Server DATEPART() 函数

DATEPART() 函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。

语法

DATEPART(datepart,date)

date 参数是合法的日期表达式。datepart 参数可以是下列的值:

datepart缩写
yy, yyyy
季度 qq, q
mm, m
年中的日 dy, y
dd, d
wk, ww
星期 dw, w
小时 hh
分钟 mi, n
ss, s
毫秒 ms
微妙 mcs
纳秒 ns

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

例如获取当前时间的年份:

Datepart(year,getdate())

得到的结果为:2012

二、SQL Server DATEDIFF() 函数

DATEDIFF() 函数返回两个日期之间的天数。

语法

DATEDIFF(datepart,startdate,enddate)

startdateenddate 参数是合法的日期表达式。

datepart 参数可以是下列的值:

datepart缩写
yy, yyyy
季度 qq, q
mm, m
年中的日 dy, y
dd, d
wk, ww
星期 dw, w
小时 hh
分钟 mi, n
ss, s
毫秒 ms
微妙 mcs
纳秒 ns

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

使用如下 SELECT 语句:

SELECT DATEDIFF(day,'2008-12-29','2008-12-30') AS DiffDate

结果:

DiffDate

1

 

 

 

使用如下 SELECT 语句:

SELECT DATEDIFF(day,'2008-12-30','2008-12-29') AS DiffDate

结果:

DiffDate
-1
 
 
 
 

三、SQL Server YEAR()/MONTH()/DAY() 函数

YEAR()函数返回表示指定日期中的年份的整数。

MONTH()函数返回表示指定日期中的月份的整数。

DAY()函数返回表示指定日期中的日期的整数。

语法

YEAR ( date )

MONTH ( date )

DAY ( date )

YEAR()/MONTH()/DAY()的参数Date可以为datetimesmalldatetime 类型的表达式。

例如:

Year('2012-02-29') 值为 2012

Month('2012-02-29')值为2

Day('2012-02-29')值为29

 

函数Datepart(year,date)相当于year()函数同样,Datepart(month,date)相当于month(date)、Datepart(day,date)等价于day(date)函数。

 

注:本文取材网络,只作整理学习只用。