2013-10-29 95 views
-2

我想寫一個查詢。查詢的結果是根據行的類型和最新條目從行包含表中的一些行。我該如何寫這個查詢

enter image description here

目前該表進行排序FK和日期的基礎上,其結果應該根據FK

+1

請改善您的問題。沒有足夠的信息。 –

+1

你是否試圖編寫查詢來返回這3行?請修改您所做的任何嘗試。 – Taryn

+0

說「我想要這三行」並不足夠。爲什麼?那三排排如何讓他們更受歡迎?乍一看,他們唯一共同的就是日期,那麼根據日期執行查詢? –

回答

1

是最新 日期如何使用RANK

WITH [Ranked] AS (
    SELECT 
     RANK() OVER (PARTITION BY [FK] ASC, ORDER BY [DATES] DESC) [Rank], 
     [PK], 
     [FK], 
     [DATES] 
    FROM [YourTable]) 
SELECT 
    [PK], 
    [FK], 
    [DATES] 
FROM [Ranked] 
WHERE [Rank] = 1; 

你必須告訴我們,當兩行有相同的時候會發生什麼[FK][DATES]

+0

它是否與SQL SERVER 2005一起工作? – Shashank

+0

@Shashank,其實是的。 – Jodrell

+0

是的我在SQL SERVER 2005上工作,我顯示一個小演示表來獲得答案我從來沒有面對的情況,根據我的工作我會在日期和時間 – Shashank