SQLクエリの下に書くことに行き詰まっています。次のようなテーブルがあります。
id | C1 | C2 | date
1 | 1 | 1 | 1/10/2010 9:30:10
2 | 1 | 1 | 1/10/2010 9:31:10
3 | 1 | 1 | 1/10/2010 9:32:10
4 | 1 | 1 | 1/10/2010 9:37:10
5 | 1 | 2 | 1/10/2010 9:38:10
6 | 2 | 3 | 1/10/2010 9:39:10
7 | 2 | 3 | 1/10/2010 9:45:10
8 | 2 | 3 | 1/10/2010 9:46:10
今、私は次のようなレコードを取得したいと思います:
5 分の日付差 (最新の日付) と同じ C1 と同じ C2
(つまり、同じ C1 の各 C2 の 5 分以内の latset 日付のようなレコード) でレコードをグループ化します。
出力を次のようにします。
id | C1 | C2 | date
3 | 1 | 1 | 1/10/2010 9:32:10
4 | 1 | 1 | 1/10/2010 9:37:10
5 | 1 | 2 | 1/10/2010 9:38:10
6 | 2 | 3 | 1/10/2010 9:39:10
7 | 2 | 3 | 1/10/2010 9:46:10
説明:
1. 最初の 3 つのレコードがグループ化され (同じ C1 と同じ C2 が 5 分以内に)、3 番目のレコードが取得されます (これら 3 つのレコードのうち最新のもの)。
2. 4 番目のレコードが取得されます。(同じ C1 と同じ C2 の 5 分後方 & 5 分前方の唯一のレコードでした)。
3.上記と
同様に・・・8レコード目まで。
さまざまなグループ化クエリとパーティション化クエリを試しましたが、行き詰まりました。どんな助けでも大歓迎です。ありがとうございました