我正在构建一个应用程序,我发现有必要在我的查询中执行一些简单的数学计算。本质上,我有一个包含标准普尔 500 指数每日值的数据库,我需要根据输入的标准获取天数列表。
用户输入日期范围和百分比范围。例如,如果日期范围是 2013 年 1 月 1 日 - 2013 年 4 月 1 日,百分比范围是 -1% - 1%,则它应该返回所有 S%P 500 日值之间的列表收盘价在 % 范围内。
问题是我实际上没有 %; 的列。我只有一列用于打开/关闭值。计算仅给定开盘和收盘值 (close-open)/open*100 的 % 非常简单。但我不确定如何在查询中执行此操作。
现在,查询在日期范围内成功搜索。我的查询是:
@cases = Close.find(:all, conditions:["date between ? and ?",
@f_start, @f_end])
但是我怎样才能检查当前行的 (close-open)/open*100 值是否在两个 % 范围值之间?
或者,如果这是不可能的或不正确的做法,我应该在哪里处理这个?