SQL日期與時間函式

2021-04-28 08:20:19 字數 2999 閱讀 5320

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')

函式引數/功能

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 server中文版的預設的日期欄位datetime格式是yyyy-mm-dd thh:mm:ss.mmm

例如:select getdate()

2004-09-12 11:06:08.177

整理了一下sql server裡面可能經常會用到的日期格式轉換方法:

舉例如下:

select convert(varchar, getdate(), 120 )

2004-09-12 11:06:08

select replace(replace(replace(convert(varchar, getdate(), 120 ),'-',''),' ',''),':','')

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

2004/09/12

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

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 )

12 09 2004

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

09 12, 2004

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

11:06:08

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

09 12 2004 1

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

09-12-2004

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

12 09 2004 1

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

11:06:08.177

SQL 日期時間函式

日期時間型別的資料也是經常要用到的,比如員工的出生日期 結賬日期 入庫日期等,sql中也提供了一些函式對這些資料進行處理。取得當前日期時間 在系統中經常需要使用當前日期時間進行處理,比如將 入庫時間 字段設定為當前日期時間。mysql中提供了now 函式,用於取得當前的日期時間,now 函式還有sy...

sql語句 日期時間函式

date 日期時間字串,修正符,修正符.time 日期時間字串,修正符,修正符.datetime 日期時間字串,修正符,修正符.julianday 日期時間字串,修正符,修正符.strftime 日期時間格式,日期時間字串,修正符,修正符.這5個函式需要乙個日期時間字串做引數,修正符可以從零到多個,...

sql 日期和時間函式

返回當前日期 curdate current date 返回當前時間 curtime current time 返回當前日期和時間 now current timestamp localtime systime localtimestamp 以unix時間戳的形式返回當前時間 unix timest...