我有以下表,保存有關更新和醫生的勞動合同到期在醫院的信息:獲取每名醫生簽署的最新的合同
可以看出,各醫生(Doc_ID
)出現不止一次,如果我們認爲在合同到期後新(通常)簽署合同,這是有道理的。
從這張表中,我想拿出每位醫生簽署的最後一份合同。我的意思是這樣的:
Doc_ID Hire_Date End_Date
71 8/1/1985 8/1/1995
72 9/15/1992 9/15/2002
73 2/10/1995 2/10/2005
74 12/4/2000 12/4/2010
75 9/1/1985 9/1/1995
76 6/23/1991 6/23/2001
其中跳過與早期合同有關的行。
我的嘗試是這樣的:
SELECT TOP 12 Doc_ID, Hire_Date, End_Date
FROM Hire_info
ORDER BY End_Date DESC
這工作,因爲我知道在醫院醫生的總數,但
- 如果不知道會發生什麼?
- 在我的數據庫中,他們每個人的工作合同都會持續10年,但如果某個醫生被5年合同聘用,會發生什麼情況。使用該醫生的腳本將會出現不止一次。
我該如何避免這些問題?
因爲,我認爲,SS 2012+,看看'Last_Value' - https://msdn.microsoft.com/en-us/library/hh231517.aspx –