可能重复:
Rails:从列中选择唯一值
假设我在过去两年(2011 年和 2012 年)创建了 5000 条记录。如何遍历所有这些记录并返回仅包含唯一年份 [2011、2012] 的数组?
我正在创建一个报告,其中行按年标记,记录退出,列按月标记。然后 td 由每年每个月的总和填充。
可能重复:
Rails:从列中选择唯一值
假设我在过去两年(2011 年和 2012 年)创建了 5000 条记录。如何遍历所有这些记录并返回仅包含唯一年份 [2011、2012] 的数组?
我正在创建一个报告,其中行按年标记,记录退出,列按月标记。然后 td 由每年每个月的总和填充。
请参阅Rails:从列中选择唯一值以获取更多 Rails 方法。
Model.uniq.pluck(:year)
编辑:
对于您的具体要求,您可以做
Model.pluck(:created_at).map{|x| x.year}.uniq
Model.select("created_at").map{ |i| i.created_at.year }.uniq 正在工作。我仍在寻找一种更清洁的方法来做到这一点。