我如何计算一个条件做一个条件?

时间:2013-10-17 16:30:47

标签: ruby-on-rails ruby ruby-on-rails-2

我正在尝试使用条件计算一列

select* from policies
|policies|
 |id|  |client_id| |expiration_date
   1     1       2013-10-10
   2     1       2013-10-10
   3     2       2013-10-10

|clients|
 |id|  |name|  
   1     ABC       
   2     CDE      
   3     EFG      

我想要

select *,count(number_expirations) from policies where(client=1)
select *,count(number_expirations) from policies where(client=2)

|policies|
 |id|  |client_id| |number_of_expirations|
   1     1               2
   3     2               1    

这是咨询

@count  = Policy.count('expiration_date',:joins=> :client,:conditions=>['name =?',params[:name])

但我正在尝试通过client_id计算expiration_date

我真的很感激帮助。

1 个答案:

答案 0 :(得分:1)

我没有完全理解您提供的问题或查找程序,但我认为您希望获得按客户分组的expiration_dates计数。

这看起来像这样:

Policy.where(name: params[:name]).group(:client_id).count