與類似的功能一樣,DATEADD
可以對日期和時間進行算術運算。語法很簡單:
DATEADD (datepart, number, date)
該number
部分必須是整數,并且必須在日期部分的可接受值范圍內。
該datepart
部分必須是以下日期部分之一(我們在之前的帖子中看到過):
DATEPART | 縮略語 |
年 | 是的,yyyy |
25美分硬幣 | qq,q |
月 | mm,m |
DAYOFYEAR | dy,y |
天 | dd,d |
周 | wk,ww |
平日 | dw,w |
小時 | HH |
分鐘 | mi,n |
第二 | ss,s |
毫秒 | 女士 |
微秒 | MCS |
納秒 | NS |
雖然DATEADD
支持上表中所示的縮寫,但我們應盡一切努力使用完整表達式來確保代碼的清晰度。如果我們使用縮寫,SQL Server不會運行得更快。
另請注意,雖然我們可以使用納秒加或減DATEADD
,但DATETIME2
數據類型的最小粒度為100納秒,因此需要考慮舍入。
DATEADD
將使用date
參數中使用的數據類型返回結果。例如,如果我們使用以YYYYMMDD
格式表示日期的文字字符串,則返回類型將是一個DATETIME
值,因為文字字符串被隱式轉換為DATETIME
。
SELECTDATEADD(DAY,1,'20181031')
-返回DATETIME值'2018-11-0100:00:00.000'
但是,如果我們使用DATETIME2
輸入值,結果將是一個DATETIME2
值。
SELECTDATEADD(納秒,100,CAST('20181031'ASDATETIME2))
-返回DATETIME2值'2018-10-3100:00:00.0000001'
我們之前看到過DATEADD
可以用于加法和減法,這使得向后和向前計算值變得容易。我們假設我們需要計算100天前的時間點。如果我們以今天為出發點,它將如下所示:
declare@dtDATETIME2=SYSUTCDATETIME();
select@dtAS[TimeNow],DATEADD(DAY,-100,@dt)AS[TimeThen];
注意在部分中使用負號number
。結果如下:
TimeNow: 2018-10-31 09:17:21.7866500
TimeThen: 2018-07-23 09:17:21.7866500
關于這個功能的最后一個想法。在增加或減少月數時,請注意不包含31天的月份。例如,讓我們在2018年2月底添加一個月:
SELECTDATEADD(MONTH,1,'20180228')
-返回DATETIME值'20180328'
但是,如果我們在2018年1月底添加一個,兩個或三個月,我們會看到不同的結果:
SELECTDATEADD(MONTH,1,'20180131');
-返回DATETIME值'20180228'
SELECTDATEADD(MONTH,2,'20180131');
-返回DATETIME值'20180331'
SELECTDATEADD(MONTH,3,'20180131');
-返回DATETIME值'20180430'
DATEADD
是一個非常有用的系統函數在T-SQL中添加和減去日期和時間的值,我廣泛使用。只要我們記住它圍繞數據類型和數月長度的怪癖,它就會非常強大。
感謝各位的閱讀,以上就是“SQL Server中的DATEADD怎么使用”的內容了,經過本文的學習后,相信大家對SQL Server中的DATEADD怎么使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是本站,小編將為大家推送更多相關知識點的文章,歡迎關注!
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...
2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...
:喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...
銀行加息什么意思?加息簡單理解就是提高存款利率和貸款利率。是一個國家或地區的中央銀行提高利息的行為,從而使商業銀行對中央銀行的借貸成本提高,進而迫使市場的利息也進行增加。加息的目的包括減少貨幣供應、壓抑消費、壓抑通貨膨脹、鼓勵存款、減緩市場投機等等。銀行加息是提高存款利息嗎?加息只是一個統稱,一般央行在宣布加息的時候會文件上會寫明提高存款利息還是貸款利息或者二者一起提高,所以具體要看文件公告,提高...
嘉實優質基金投資目的是怎樣的?該款基金是力爭為基金份額持有人創造較為長期并且超額的收益,但是優質基金一般投資的都是一些優質的企業,從而可以獲得較為長期的回報,并且基金公司對購買基金的配額進行一定的配置有效的管理風險,在企業的內部,會有一定的制度,并且由足夠的人力以及資產的管理資源,并且進行有效的配置,該公司的執行能力,展戰略是非常清晰的。該公司的盈利方向主要是企業的價值超過市場水平,并且存在持續增...
綠色GDP是綜合環境經濟核算體系中的核心指標,在現在的GDP基礎上融入資源和環境的因素。具體而言,綠色GDP是從GDP中扣除由于環境污染、自然資源退化、教育低下、人口數量失控、管理不善等因素引起的經濟損失成本。這個指標實質上代表了國民經濟增長的競爭效應。綠色經濟GDP是指國內生產總值從GDP中扣除生態資源消耗價值和環境污染損害價值后留下的,稱為國內可持續發展生產總值??煞殖煽傊蹬c凈值??傊凳菑馁Y源...