gpt4 book ai didi

ruby-on-rails - 按日期分组日期并计算行数

转载 作者:行者123 更新时间:2023-11-29 12:37:21 25 4
gpt4 key购买 nike

我有一个日志表。我想生成一个奇特的图表,我们可以在其中查看每天的总日志数。

我想要的输出=

2014-01-05 => 1
2014-01-06 => 6

第一个是日期,然后是该日期内的总记录。

我现在有这个

Log.order('created_at desc').limit(60).group('created_at')

想不通,如果你们能帮助我:)

日志示例:

#<Log id: 33533, user_id: 94, category: 19, sub_category: 15147, data: {}, created_at: "2014-12-14 11:40:32", updated_at: "2014-12-14 11:40:32">

最佳答案

如果你想按日期分组,只需告诉数据库并让它完成工作:

Log.group('created_at::date').count

::date 是用于将时间戳转换为日期的 PostgreSQL 语法。您还可以使用标准的 SQL 转换语法:

Log.group('cast(created_at as date)').count

这应该在 UTC 中完成所有操作,如果您需要不同的时区,请调整 GROUP BY 子句。

您不一定会从中获得正确顺序的哈希,您可以在 Ruby 中对哈希进行排序,或者如果需要数据库进行排序,则可以使用子查询。

关于ruby-on-rails - 按日期分组日期并计算行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27471429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com