久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

T-SQL - 獲取最近的日期和最近的未來日期

T-SQL - Getting most recent date and most recent future date(T-SQL - 獲取最近的日期和最近的未來日期)
本文介紹了T-SQL - 獲取最近的日期和最近的未來日期的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

問題描述

假設(shè)下面的記錄表

ID    Name       AppointmentDate
--    --------   ---------------
1     Bob         1/1/2010
1     Bob         5/1/2010
2     Henry       5/1/2010
2     Henry       8/1/2011
3     John        8/1/2011
3     John       12/1/2011

我想按人檢索最近的約會日期.所以我需要一個查詢來提供以下結(jié)果集.

I want to retrieve the most recent appointment date by person. So I need a query that will give the following result set.

1   Bob    5/1/2010 (5/1/2010 is most recent)
2   Henry  8/1/2011 (8/1/2011 is most recent)
3   John   8/1/2011 (has 2 future dates but 8/1/2011 is most recent)

謝謝!

推薦答案

假設(shè)您說最近"的意思是最近",例如存儲的日期是距當(dāng)前日期最少的天數(shù),而我們不這樣做"不關(guān)心它是在當(dāng)前日期之前還是之后",那么應(yīng)該這樣做(可能需要進行瑣碎的調(diào)試):

Assuming that where you say "most recent" you mean "closest", as in "stored date is the fewest days away from the current date and we don't care if it's before or after the current date", then this should do it (trivial debugging might be required):

SELECT ID, Name, AppointmentDate
 from (select
           ID
          ,Name
          ,AppointmentDate
          ,row_number() over (partition by ID order by abs(datediff(dd, AppointmentDate, getdate()))) Ranking
         from MyTable) xx
 where Ranking = 1

這使用 SQL 2005 及更高版本的 row_number() 函數(shù).子查詢根據(jù)規(guī)范對數(shù)據(jù)進行排序",主查詢選擇最合適的.

This usese the row_number() function from SQL 2005 and up. The subquery "orders" the data as per the specifications, and the main query picks the best fit.

還要注意:

  • 搜索基于當(dāng)前日期
  • 我們只計算天數(shù)差異,忽略時間(小時、分鐘等)
  • 如果兩天是等距的(比如之前 2 天和之后 2 天),我們隨機選擇一個

所有這些都可以根據(jù)您的最終要求進行調(diào)整.

All of which could be adjusted based on your final requirements.

這篇關(guān)于T-SQL - 獲取最近的日期和最近的未來日期的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

Converting Every Child Tags in to a Single Column with multiple Delimiters -SQL Server (3)(將每個子標記轉(zhuǎn)換為具有多個分隔符的單列-SQL Server (3))
How can I create a view from more than one table?(如何從多個表創(chuàng)建視圖?)
Create calculated value based on calculated value inside previous row(根據(jù)前一行內(nèi)的計算值創(chuàng)建計算值)
How do I stack the first two columns of a table into a single column, but also pair third column with the first column only?(如何將表格的前兩列堆疊成一列,但也僅將第三列與第一列配對?) - IT屋-程序員軟件開發(fā)技
Recursive t-sql query(遞歸 t-sql 查詢)
Convert Month Name to Date / Month Number (Combinations of Questions amp; Answers)(將月份名稱轉(zhuǎn)換為日期/月份編號(問題和答案的組合))
主站蜘蛛池模板: 欧美另类日韩 | 国产欧美性成人精品午夜 | 一区二区免费视频 | 人操人人干人 | 久婷婷| 亚洲成人999 | 国产精品视频免费观看 | 欧美1级 | 91资源在线观看 | 97色在线观看免费视频 | 阿v视频在线观看 | 欧美视频二区 | 亚州春色| 免费一级毛片 | 国产成人一区二区 | 国产成人精品一区二区三区四区 | 国产精品一区二区久久 | 欧美jizzhd精品欧美巨大免费 | 亚州国产 | 久久青青 | 一级欧美日韩 | 久久成人亚洲 | 国产精品美女在线观看 | 日韩欧美在线一区 | 日韩三级在线观看 | 狠狠色综合欧美激情 | www.成人在线视频 | 男女网站免费 | 亚洲图片视频一区 | 久久久精彩视频 | 99免费在线观看 | 日韩欧美一区二区三区免费观看 | 欧美高清免费 | 成人伊人网 | 成人av网页| 91在线视频观看免费 | 国产精品久久在线观看 | 久久久久久www | 精品亚洲国产成av人片传媒 | 久久久99精品免费观看 | 国产成人综合网 |