gpt4 book ai didi

ruby-on-rails - 按十年分组

转载 作者:太空宇宙 更新时间:2023-11-03 16:17:24 25 4
gpt4 key购买 nike

我有一个Album 表,其中有一个名为release_datedate 列。

我想获得所有十年的列表以及该十年发行的专辑数量。

所以,输出可能是这样的:

  • 2010 - 11
  • 2000 - 4
  • 1990 - 19
  • 1940 - 2

Ruby 2.3.1 w/Rails 5 on Postgres 9.6, FWIW。

这基本上是我之前遇到的一个后续问题:Group by month+year with counts

这可能有助于解决问题...我只是不确定如何按十年进行分组。

最佳答案

使用 Ruby 处理数据库数据在任何意义上都是低效的。

我建议在数据库级别进行:

Album.group("(DATE_PART('year', release_date)::int / 10) * 10").count

这里发生的事情,基本上是您将 release_date 中的一年作为整数,将其转换为十年并计算该组的专辑数。

比如说,我们有一个 release_date"2016-11-13T08:30:03+02:00":

2016 / 10 * 10
#=> 2010

关于ruby-on-rails - 按十年分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40579768/

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