Postgres をデータベースとして使用する RAILS アプリがあり、値の範囲でグラフを描画するユース ケースがあります。残念ながら、範囲は 10 進数であるため、Postgres の generate_series 関数を使用できません。これを10個の異なるクエリに分割するのではなく、これをクエリする最適な方法を見つけるのに助けが必要です. サンプルデータはこちら
- スコア | の表があります。学生
- クエリを指定すると、score-student タプルのセットが取得され、そこから range(min(score), max(score)) が取得されます。たとえば、範囲(10.25、16.80)
- 上記の範囲を 0.655 の間隔で 10 ステップに分割する必要があります。これは (最大 - 最小)10 - 10.25,10.91,11.56,12.22,12.87 です。
- 上記の各ステップについて、そのスコアと前の値の間の学生数を表示します
- 結果は [(10.25,11232),(10.91,2434),....] の配列になります。
Postgres で単一のクエリまたは 10 以上のクエリでこれを行う方法/考えはありますか?