からMAX値を選択するために、窓関数を使用して、私は次のように私はテーブルを持っている場合たとえば、過去2年以内にPostgresqlの:日付範囲
から最大値を選択しようとしています:
|person_id | pass_or_fail | timestamp|
|----------|--------------|-----------|
|1234 | 1 | 1990-01-01|
|1234 | 0 | 1995-01-01|
|1234 | NULL | 1995-12-12|
|6789 | 0 | 1990-01-01|
|6789 | 0 | 1991-01-01|
|6789 | 1 | 1995-01-01|
|6789 | 1 | 1996-01-01|
|6789 | 0 | 1997-01-01|
|6789 | NULL | 1997-03-03|
私は私のクエリから次を取得したい:
person_id |highest_grade_from_past_two_years | pass_or_fail | timestamp
1234 |1 | 1 | 1990-01-01
1234 |0 | 0 | 1995-01-01
1234 |0 | NULL | 1995-12-12
6789 |0 | 0 | 1990-01-01
6789 |0 | 0 | 1991-01-01
6789 |1 | 1 | 1995-01-01
6789 |1 | 1 | 1996-01-01
6789 |1 | 0 | 1997-01-01
6789 |1 | NULL | 1997-03-03
私は私にこの結果を与えるために私の窓関数を書くことができますどのように?
上記の2番目の表は、私のクエリ結果を見た目にしたいものです。私は1つのテーブルでのみ作業しています –
両方のテーブルが同じですが、selectステートメントでサブクエリを使用しないようにしています - セパレートで各行に対して実行します –