Sql Rails";。其中();带十进制除法的子句

Sql Rails";。其中();带十进制除法的子句,sql,ruby-on-rails,ruby-on-rails-4,Sql,Ruby On Rails,Ruby On Rails 4,我试着运行这样的程序: @almostFullTopics = Topic.where("(user_submissions_count/submissions_cap) >= .8 ") @almostFullTopics = Topic.where("(user_submissions_count.to_f/submissions_cap) >= .8 ") 其中,用户提交数和提交上限均为整数。这在目前不起作用,因为划分没有正确完成。我基本上需要这样的东西: @almostF

我试着运行这样的程序:

@almostFullTopics = Topic.where("(user_submissions_count/submissions_cap) >= .8 ")
@almostFullTopics = Topic.where("(user_submissions_count.to_f/submissions_cap) >= .8 ")
其中,用户提交数和提交上限均为整数。这在目前不起作用,因为划分没有正确完成。我基本上需要这样的东西:

@almostFullTopics = Topic.where("(user_submissions_count/submissions_cap) >= .8 ")
@almostFullTopics = Topic.where("(user_submissions_count.to_f/submissions_cap) >= .8 ")
关于如何实现这一点,有什么想法吗?

在这个答案中,可能值得从另一个方向进行探讨

@almostFullTopics = Topic.where("user_submissions_count  >= 0.8 * submissions_cap") 

你在哪个数据库上运行?您的第一次尝试似乎在mysql上运行得很好。例如,我在Postgres上运行,如果用户提交次数=7,提交次数=12,则用户提交次数/提交次数应等于0。使用to_f可以使它工作,但我不知道如何在where子句中使用它