1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          sql datediff函數的使用方法(SQL中如何使用datediff函數)

          來源:互聯網轉載 時間:2024-05-04 01:59:57

          在SQL Server中,可以使用T-SQL DATEDIFF()函數返回兩個日期之間的差異。它適用于任何可以解析為time、date、smalldatetime、datetime、datetime2或datetimeoffset值的表達式。因此,你也可以得到兩次的差值。

          DATEDIFF()函數語法如下:

          DATEDIFF ( datepart , startdate , enddate )

          其中datepart是你想要比較的日期的一部分。startdate是第一個日期,enddate是結束日期。

          它的工作方式是從enddate中減去startdate。

          示例1

          下面是一個基本的例子,我們可以算出兩個日期之間的天數:

          select DATEDIFF(day, '2001-01-01', '2002-01-01') AS Result;

          結果:

          +----------+| Result   ||----------|| 365      |+----------+

          示例2

          下面是另一個例子,我聲明了兩個變量并為它們分配了兩個不同的日期(我使用DATEADD()將第一個日期添加1年)。然后使用DATEDIFF()返回該日期的各個dateparts:

          declare @date1 datetime2 = '2000-01-01 00:00:00.0000000';declare @date2 datetime2 = DATEADD(year, 1, @date1);select     DATEDIFF( year, @date1, @date2 ) AS Years,    DATEDIFF( quarter, @date1, @date2 ) AS Quarters,    DATEDIFF( month, @date1, @date2 ) AS Months,    DATEDIFF( week, @date1, @date2 ) AS Weeks,    DATEDIFF( dayofyear, @date1, @date2 ) AS DayOfYear,    DATEDIFF( day, @date1, @date2 ) AS Days;

          結果:

          +---------+------------+----------+---------+-------------+--------+| Years   | Quarters   | Months   | Weeks   | DayOfYear   | Days   ||---------+------------+----------+---------+-------------+--------|| 1       | 4          | 12       | 53      | 366         | 366    |+---------+------------+----------+---------+-------------+--------+

          示例3

          如前所述,你還可以返回日期之間的時間部分。下面是返回日期/時間值之間的小時、分鐘和秒數的例子:

          declare @date1 datetime2 = '2000-01-01 00:00:00.0000000';declare @date2 datetime2 = DATEADD(hour, 1, @date1);select     DATEDIFF( hour, @date1, @date2 ) AS Hours,    DATEDIFF( minute, @date1, @date2 ) AS Minutes,    DATEDIFF( second, @date1, @date2 ) AS Seconds;

          結果:

          +---------+-----------+-----------+| Hours   | Minutes   | Seconds   ||---------+-----------+-----------|| 1       | 60        | 3600      |+---------+-----------+-----------+

          示例4

          下面是一個獲取兩個日期/時間值之間的毫秒、微秒和納秒數的例子:

          declare @date1 datetime2 = '2000-01-01 00:00:00.0000000';declare @date2 datetime2 = DATEADD(millisecond, 1, @date1);select        DATEDIFF( millisecond, @date1, @date2 ) AS Milliseconds,    DATEDIFF( microsecond, @date1, @date2 ) AS Microseconds,    DATEDIFF( nanosecond, @date1, @date2 ) AS Nanoseconds;

          結果:

          +----------------+----------------+---------------+| Milliseconds   | Microseconds   | Nanoseconds   ||----------------+----------------+---------------|| 1              | 1000           | 1000000       |+----------------+----------------+---------------+

          示例5 - Error錯誤!

          如果你嘗試做一些極端的事情,比如,返回100年后的納秒數,你會得到一個錯誤。這是因為DATEDIFF()返回一個int值,100年內的納秒數比int數據類型能夠處理的納秒數還要多。

          如果你試著這么做會發生什么呢?

          declare @date1 datetime2 = '2000-01-01 00:00:00.0000000';declare @date2 datetime2 = DATEADD(year, 100, @date1);select        DATEDIFF( millisecond, @date1, @date2 ) AS Milliseconds,    DATEDIFF( microsecond, @date1, @date2 ) AS Microseconds,    DATEDIFF( nanosecond, @date1, @date2 ) AS Nanoseconds;

          結果:

          The datediff function resulted in an overflow. The number of dateparts separating two date/time instances is too large. Try to use datediff with a less precise datepart.

          當然如果你真的必須找出100年內有多少納秒,那么可以使用DATEDIFF_BIG()函數。這個函數返回一個帶符號的bigint數據類型,它允許你返回比DATEDIFF()更大的值。

          c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...

          2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...

          :喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...

          (資料圖片僅供參考)歡迎觀看本篇文章,小勉來為大家解答以上問題。御前四寶主題曲,主題曲是得意的笑很多人還不知道,現在讓我們一起來看看吧!1、主題曲是《得意的笑》?!?03010》是2004年由北京電影制片廠出品的一部清代原創搞笑喜劇,由、沈聯合執導,等主演。2、劇情簡介:康熙年間,康熙帝與一個和尚銀雪(實際上是康熙之父指定的)打賭,怪和尚答應嫁給街上的兩個乞丐;納蘭容若,首相珀爾的兒子;海軍提督施...

          在境外資本市場中,香港的上市要求是比較高的。很多企業,尤其是一些沒有盈利的企業,或者早期投入大、不能立刻產生利潤的企業,往往很難在香港上市。那么,香港創業板上市多少錢?香港創業板上市需要什么條件?香港上市有哪些法律問題需要注意?一起來看看吧!香港創業板上市多少錢?香港主板市場上市只要求企業有三年以上業務記錄,上市時市值不低于2億港元,過往三年合計盈利不低于5000萬港元;如在香港創業板,上市標準只...

          理財付融寶是什么?根據付融寶的背景來看,付融寶是比較領先的投資平臺推出的。江蘇寶貝金融信息服務有限公司成立于2009年9月,是經工商行政管理部門批準的金融信息服務企業,是“南京電子商務協會理事單位”。公司憑借多年在金融、擔保、互聯網行業的積累,完善了產品、融資、理財、風險控制、金融、客戶服務等完整的金融服務產業鏈,成長為具有卓越獨立能力的金融創新企業。理財付融寶有哪些理財產...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>