【问题标题】:Heroku PG error: group by needs created atHeroku PG 错误:按需求分组
【发布时间】:2018-02-11 22:12:12
【问题描述】:

我正在使用自定义范围的 rails 4.2.5.1 应用程序:

scope :listing_search_cities, ->{group(:city).count}

我使用这个范围来创建构面和过滤器。在 MYSQL 上一切正常。当我将此推送到 Heroku 时,由于 PG,我得到了必须将 created_at 添加到组函数的错误。

我这样做了,错误消失了,我现在的范围是:

scope :listing_search_cities, -> {group('city, created_at').count}

但是,这会给出 created_at 时间和计数的哈希值:

{2018-10-10....UTC => 2}

而不是城市名称和计数,这是我想要的(查询在 MYSQL 中给出了这个)

{ "tempe" => 2}

我只想要我提供给范围的选择(搜索结果)的城市名称和数量。

如何在 PG 中的列表搜索结果中使用 group 和 count 获取城市名称和每个城市的计数?

我在其他地方读到过关于人们使用 unscoped 的信息?怎么用?

【问题讨论】:

    标签: mysql ruby-on-rails postgresql heroku group-by


    【解决方案1】:

    没关系!对于那些面临同样问题的人:只需颠倒分组顺序即可:

    scope :listing_search_cities, -> {group('created_at, city').count}
    

    你可以走了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-17
      • 1970-01-01
      • 1970-01-01
      • 2017-06-10
      • 1970-01-01
      • 1970-01-01
      • 2017-04-16
      相关资源
      最近更新 更多