日期函数

日期函数

日期内部函数用来显示有关日期和时间的信息。它们处理datetimesmalldatetime的值,并对其进行算术运算。日期函数可用在选择列表中、where子句里或任何能够使用表达式的地方。

Datetime类型的值在内部被adaptive server存贮成两个4字节的整数。第一个4字节存放基准日期(January 1, 1900)前或后的天数。基准日期是系统的参考日期。早于January 1, 1753的日期值是禁用的。另外一个4字节数存放精确到1300秒的时间。

Smalldatetime存储的日期和时间不如datetime中的精确。Smalldatetime被存成两个2字节的整数。前2个字节存放基准日期后的天数,另外2个字节存放一天从零点开始的分钟数。日期范围是从january 1, 1900june 6,2079年,时间精确到分钟。

 

函数名

参数

返回结果

Getdate

()

当前的系统日期和时间

Datename

(datepart, date)

ASCII串形式给出datetimesmalldatetime指定的日期元素。

Datepart

(datepart,date)

以整数形式给出datetimesmalldatetime指定的日期元素。

Datediff

(datepart,date)

2个和第1个日期元素间的差值(例如月、日、小时)

Dateadd

(datepart,number,date)

把一个日期部分加到另一个日期后产生的日期值

 

Datetimedatepartdatediffdateadd都要求日期元素的年、月、小时等做为其参数。下表给出了每个日期元素、它们的缩写以及相应取值范围。Datetime函数产生相应的ASCII值,如一周里的星期几。

日期元素

缩写

Year

Yy

1753-9999

Quarter

Qq

1-4

Month

MM

1-12

Dayofyear

Dy

1-366

Day

Dd

1-31

Week

Wk

0-51

Weekday

Dw

1-7(星期日-星期六)

Hour

Hh

0-23

Minute

Mi

0-59

Second

Ss

0-59

Milliseond

Ms

0-999

注意:weekday周天元素的值是受设置的语言影响的。

例子:

查询给定日期的月分:

select datename(mm,”1997/11/28”) 

结果:november

查询给定的两个日期相差的月数:

select datediff(mm,”1997/09/09”,”1997/11/11”)

结果:

2

为给定日期再加5个月

select dateadd(mm,05,”1997/06/16”)

结果:

Nov 16 1997 12:00:00:000AM

——

Datepart函数接受下面的日期元素做为星期数:

Calweekofyear 返回星期号

Calyearofweek 返回年数

Caldayofyear 返回星期中的天数

 

日期元素

缩写

结果

Calweekofyear

Cwk

1-52

Calyearofyear

Cyr

1753-9999

Caldayofweek

Cdw

1-7(在美国1是星期一)

 

例如:

查询给定日期是该年中的第几个星期:

select datepart(cwk,”1997/01/31”)

结果:48

查询给定日期中年的部分:

select datepart(cyr,”1997/01/15”)

结果:1997

查询给定日期为星期几:

select datepart(cdw,”1997/11/28”)

结果:5

你可能感兴趣的:(Date,server,qq,存储,语言)