我们有一个使用 Postgres 作为数据库的 RAILS 应用程序,并且有一个在一系列值上绘制图形的用例。不幸的是,范围是小数,所以我无法使用 Postgres 的 generate_series 函数。需要帮助找出查询此问题的最佳方法,而不是将其拆分为 10 个不同的查询。这是示例数据
- 我们有一张带有分数的表 | 学生
- 给定一个查询,我会得到一组 score-student 元组,从中我得到 range(min(score), max(score))。例如范围(10.25, 16.80)
- 我们需要将上述范围分成 10 个步骤,间隔为 0.655,即 (max-min)10 - 10.25,10.91,11.56,12.22,12.87
- 对于上面的每个步骤,显示该分数与先前值之间的学生人数
- 结果将是一个带有 [(10.25,11232),(10.91,2434),....] 的数组
在 Postgres 中以单个查询或少于 10 个以上的查询执行此操作的任何方式/想法?