2017-04-24 5 views
-2

複数の最大日付を検索しようとしています。私はグループで試しましたが、それは最大の最大日付しか示していませんでした。私はあなたのすべての助けに感謝します。複数の最大値

MemberID Contract Group Date 
1 A 8 11/22/2016 
1 A 61 10/19/2016 
1 A 61 11/19/2015 
1 A 8 7/26/2015 
1 A 8 7/17/2014 
1 A 8 7/17/2013 
1 A 8 5/17/2013 
1 A 8 3/26/2013 

理想的な結果は次のようになります。

MemberID Contract Group Date 
1 A 8 11/22/2016 
1 A 61 10/19/2016 
1 A 8 7/26/2015 

二マックスMEMBERID 1、契約A、グループ8.ためにあなたの助けを事前に

おかげ日付。

+0

を持つように、このいずれかを試すことができますそして、どのように我々はあなたがどの*最大*日付をしたいですか知っていることになっていますか? – Lamak

+0

あなたは最新の2を望んでいますか? – Jason

+0

ええ、ここでは正確に何をしたいですか?私はあなたが指定したものからはわかりません。なぜ(1、A、8)は2つで、(1、A、61)は1つのみですか?ここであなたの論理は何ですか? – pmbAustin

答えて

0

私はあなたが他のグループを比較していると仮定して書いています。

DECLARE @priorGroup int = 8; -- Just change these two 
DECLARE @currentGroup int = 61; -- numbers to compare other groups 

WITH max_Dates AS (
SELECT MemberID,[Contract],[Group],MAX([Date]) AS 'Date' 
FROM Table_1 
WHERE [Group] IN (@priorGroup,@currentGroup) 
GROUP BY MemberID,[Contract],[Group]) 

SELECT * 
FROM max_Dates 
WHERE [Group] = @priorGroup 
UNION 
SELECT TOP 1 MemberID,[Contract],[Group],MAX([Date]) AS 'Date' 
FROM Table_1 
WHERE [Group] = @priorGroup 
     AND 
     [Date] < (SELECT [Date] 
       FROM max_Dates 
       WHERE [Group] = @currentGroup) 
GROUP BY MemberID,[Contract],[Group] 

それとも、同じ行の日付

DECLARE @priorGroup int = 8; 
DECLARE @currentGroup int = 61; 

WITH max_Dates AS (
SELECT MemberID,[Contract],[Group],MAX([Date]) AS 'Date' 
FROM Table_1 
WHERE [Group] IN (@priorGroup,@currentGroup) 
GROUP BY MemberID,[Contract],[Group]) 

SELECT MemberID,[Contract],[Group], 
    (SELECT TOP 1 MAX([Date]) AS 'Date' 
     FROM Table_1 
     WHERE [Group] = @priorGroup 
       AND 
       [Date] < (SELECT [Date] 
         FROM max_Dates 
         WHERE [Group] = @currentGroup) 
         GROUP BY MemberID,[Contract],[Group]) AS 'PriorMax', 
     (SELECT [Date] 
     FROM max_Dates 
     WHERE [Group] = @priorGroup) AS 'Current Max' 
FROM max_Dates 
WHERE [Group] = @priorGroup 
+0

ありがとう。やってみます。 – Carl

+0

同じ行に日付を追加する場合は、別のクエリを追加しました。 – Jason

関連する問題