Самый эффективный способ получить счет из таблицы на основе временных рамок? - PullRequest
3 голосов
/ 28 ноября 2011

У меня есть таблица clicks, в которой регистрируются клики по ссылкам на сайте.

В таблице links я хочу поле weekly_clicks, которое будет обновляться с помощью задания cron.

Как мне написать следующий запрос псевдокода в Ruby / ActiveRecord?

Select count(clicks) FROM clicks
  WHERE link_id=xxx
  AND created_at within previous 7 days including today

Ответы [ 2 ]

4 голосов
/ 28 ноября 2011
Click.where(:link_id => 'xxx').where('created_at >= ?', 1.week.ago).count
2 голосов
/ 28 ноября 2011
link = Link.new(params)
link.weekly_clicks = Click.where("created_at > ? and link_id = ?", 1.week.ago, xxx).count
link.save
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...