Sql時間函式

2022-09-20 06:06:13 字數 3971 閱讀 8930

一、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

')

二、日期格式轉換

select

convert(varchar, getdate(), 120)

2004-09

-1211:06:08

select

replace(replace(replace(convert(varchar, getdate(), 120 ),'

-',''),'

',''),'

:','')

20040912110608

select

convert(varchar(12) , getdate(), 111)

2004/09

/12select

convert(varchar(12) , getdate(), 112)

20040912

select

convert(varchar(12) , getdate(), 102)

2004.09.12

其它我不常用的日期格式轉換方法:

select

convert(varchar(12) , getdate(), 101)

09/12/

2004

select

convert(varchar(12) , getdate(), 103)

12/09/

2004

select

convert(varchar(12) , getdate(), 104)

12.09.2004

select

convert(varchar(12) , getdate(), 105)

12-09-

2004

select

convert(varchar(12) , getdate(), 106)

1209

2004

select

convert(varchar(12) , getdate(), 107)

0912, 2004

select

convert(varchar(12) , getdate(), 108)

11:06:08

select

convert(varchar(12) , getdate(), 109)

0912

2004

1select

convert(varchar(12) , getdate(), 110)

09-12-

2004

select

convert(varchar(12) , getdate(), 113)

1209

2004

1select

convert(varchar(12) , getdate(), 114)

11:06:08.177

舉例:1.getdate() 用於sql server :select getdate()

2.datediff('s','2005-07-20','2005-7-25 22:56:32')返回值為 514592 秒

datediff('d','2005-07-20','2005-7-25 22:56:32')返回值為 5 天

3.datepart('w','2005-7-25 22:56:32')返回值為 2 即星期一(週日為1,週六為7)

datepart('d','2005-7-25 22:56:32')返回值為 25即25號

datepart('y','2005-7-25 22:56:32')返回值為 206即這一年中第206天

datepart('yyyy','2005-7-25 22:56:32')返回值為 2005即2023年

附圖函式

引數/功能

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

yyyyyy

年 1753 ~ 9999

quarter

qqq 

季 1 ~ 4

month

mmm 

月1 ~ 12

day of year

dyy

一年的日數,一年中的第幾日 1-366

daydd

d  日,1-31

weekdaydww

一周的日數,一周中的第幾日 1-7

week

wkww

周,一年中的第幾周 0 ~ 51

hour

hhh 

時0 ~ 23

minute

min 

分鐘0 ~ 59

secondsss

秒 0 ~ 59

millisecondms-

毫秒 0 ~ 999

sql時間函式

1 常用日期方法 下面的getdate 2006 11 08 13 37 56.233 1 datename datepart date 返回表示指定日期的指定日期部分的字串。datepart詳見下面的列表.select datename day,getdate 返回8 2 datepart dat...

sql時間函式

一 sql server日期時間函式 當前系統日期 時間 select getdate 2dateadd 在向指定日期加上一段時間的基礎上,返回新的datetime值 select dateadd day,2,2004 10 15 返回 2004 10 17 00 00 00.000 3datedi...

SQL時間函式

datename 返回表示指定日期的指定日期部分的字串 datepart 返回表示指定日期的指定日期部分的整數 例如 select datename month,getdate 返回05 select datepart mm,getdate 返回5 select datename weekday,2...