Rails如何区分和逐个查询

时间:2017-05-26 12:10:48

标签: mysql ruby-on-rails

假设我有一个使用visit_id和created_at的表访问,并且会有很多访问者使用相同的visit_id。

现在我想每10分钟独立访问绘制一张图表。是否可以在一个查询中执行此操作?我怎么能在rails中做到这一点?

在我将独特的访问存储在表格之前,我就这样做了

 Visit.
   select(:created_at).
   where("DATE(created_at)>=? and DATE(created_at)<=?",from_date,to_date).
   group("ROUND(UNIX_TIMESTAMP(created_at) / 10)").
   count

我得到了我的结果。但是当需要对visit_id进行分组时,我也无法编写查询。

1 个答案:

答案 0 :(得分:0)

您也可以通过访问简单地将visit_id添加到群组中:

Visit.
  select(:created_at).
  where("DATE(created_at)>=? and DATE(created_at)<=?",from_date,to_date).
  group("visit_id, ROUND(UNIX_TIMESTAMP(created_at) / 10)").
  count