2 つの潜在的な「タイプ」と、各 ID と「タイプ」に関連付けられた多くの日付を持つ多くの ID を持つテーブルがあります。タイプAより大きいID、「タイプ」Aの最新日付、「タイプ」Bの最も近い日付を選択したい。
Sample Table
ID Type Date
1 A 1/5/2013
1 A 1/10/2013
1 B 1/1/2013
2 A 2/10/2013
2 A 2/9/2013
2 B 2/15/2013
2 B 2/20/2013
3 A 3/15/2013
3 B 3/10/2013
3 B 3/20/2013
望ましい結果
ID Date A Date B
2 2/10/2013 2/15/2013
3 3/15/2013 3/20/2013
ID 1 は条件 B > Max(typeA) {1/10/13} を満たさないため省略されます ID 2 は max(typeA) {2/10/13 vs 2/9/13} および日付 B {2 /15/13} は日付 A よりも大きく、その条件を満たす 2 つの日付のうち最も近い日付です。ID 3 は、日付 A より後の A エントリと最も近い B エントリ {3/20/13} のみに等しい
最小、最大、および行/パーティションの繰り返しをいくつか試しましたが、結果はいくつかの適格なエントリを除外しました。Sql Server 2008 V 10を使用しています。どんな助けでも大歓迎です