我使用的是Ruby on Rails 3,我有一个存储check_in和check_out datetime的“访问”模型,我需要在一般日期范围内通过访问进行搜索并统计当天所有时段分组的“在场观众数”。Ruby on Rails 3按小时检入/检出范围
......即,我需要类似的东西:
8:00am - 8:59am : 12 visitors 9:00am - 9:59am : 5 visitors 10:00am - 10:59am : 4 visitors
...给出一个访问表与检查和检出时间存储。
这个想法是采取“访问”的入住和退房时间,然后确定在一天中的任何给定时间内有多少访问者(假设每次访问记录一位访问者,由政策执行)访问的时间为了找出高峰访问时间。
我试图建立查询:
eight_am_visits = Visit.where("EXTRACT(HOUR_MINUTE FROM check_in) <= 859").where("EXTRACT(HOUR_MINUTE FROM check_out) >= 800")
...并没有它,因为Rails的专卖店在这样一个奇怪的时尚日期相当命中(UTC中,它会在数据库转换查询),并且当我在SQL中使用像EXTRACT这样的东西时,它似乎没有进行这种转换...
...任何想法如何做到这一点?
...这里的一个注意事项是,这不包括跨越多天的访问,虽然这对于我的数据并不重要,因为这从来不会因政策而发生。如果你需要这个跨越多天,你可能需要收集一些更聪明的条件... – ZroonStack