Sql server中時間函數用法詳解

來源:互聯網
上載者:User

SQL中的時間函數非常有用,特別是在我們進行初始賦值、複雜查詢的時候,就顯得特別方便。

1、獲得系統目前時間

select getdate() 

 

2、DateName ( datepart , date )返回表示指定日期的指定日期部分的字串。

--今天是2009-2-24--星期二

SELECT DATENAME(year, getdate()) AS 'Year Name' --------返回:2009

SELECT DATENAME(month, getdate()) AS 'Month Name'  --------返回:02

SELECT DATENAME(weekday, getdate()) AS 'Weekday Name'------返回:星期二

 

3、DATEADD (datepart , number, date ),在向指定日期加上一段時間的基礎上,返回新的 datetime 值。

select DateAdd(MM,2,'2008-8-8') --------------返回:2008-10-08 00:00:00.000

select DateAdd(dd,2,'2008-8-8') --------------返回:2008-08-10 00:00:00.000

select dateadd(hh,-1,getdate()) --------------返回:2009-02-23 12:46:46.450,返回前一個小時的時間

 

4、DATEDIFF ( date-part, date-expression-1, date-expression-2 )  返回兩個日期之間的間隔。

  此Function Compute兩個指定日期之間日期部分的數目。結果為日期部分中等於(date2 - date1)的有符號的整數值。

 

SELECT datediff( hour, '4:00AM', '5:50AM' )---------------------------返回: 1

SELECT datediff( month, '1987/05/02', '1995/11/15' )------------------返回: 102

SELECT datediff( day, '00:00', '23:59' )------------------------------返回:0

SELECT datediff( day,  '1999/07/19 00:00',  '1999/07/23 23:59' )------返回:4

SELECT datediff( month, '1999/07/19', '1999/07/23' )------------------返回:0

SELECT datediff( month, '1999/07/19', '1999/08/23' )------------------返回:1

 

 執行個體:查詢當天更新的資料

 

select * from tableName where datediff(dd,F_EditTime,getdate())=0

 

 

5、DATEPART ( datepart ,date )返回代表指定日期的指定日期部分的整數。

--今天是2009-2-24 星期二
SELECT DATEPART(year,getdate()) as 'Year'    --------返回:2009

SELECT DATEPART(month,getdate()) as 'Month'   ---------返回:2

SELECT DATEPART(weekday,getdate()) as 'Weekday' ---------返回:3,如:Sunday = 1、Saturday = 7

SELECT DAY(getdate())             -----------------------返回:24

 

備忘:DAY、MONTH、和 YEAR 函數分別是 DATEPART(dd, date)、DATEPART(mm, date)、和 DATEPART(yy, date) 的同義字。

 

附錄: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
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.