最も早い日付と最も遅い日付をラベル付けすることにより、識別子を指定して、1 年間隔内の日付をグループ化しようとしています。その日付から 1 年以内に日付がない場合は、それ自体の日付が最初と最後の日付として記録されます。たとえば、元のデータは次のとおりです。
id | date
____________
a | 1/1/2000
a | 1/2/2001
a | 1/6/2000
b | 1/3/2001
b | 1/3/2000
b | 1/3/1999
c | 1/1/2000
c | 1/1/2002
c | 1/1/2003
そして、私が望む出力は次のとおりです。
id | first_date | last_date
___________________________
a | 1/1/2000 | 1/2/2001
b | 1/3/1999 | 1/3/2001
c | 1/1/2000 | 1/1/2000
c | 1/1/2002 | 1/1/2003
私は一日中これを理解しようとしてきましたが、理解できません。ケースIDの重複が2つしかない場合は実行できますが、それ以上の値は実行できません。どんな助けでも素晴らしいでしょう。