mysql - 多列上的组的 Activerecord 查询返回以数组作为键的散列

标签 mysql ruby-on-rails ruby ruby-on-rails-4 activerecord

我编写了一个 ActiveRecord 查询来获取按两列 col_acol_b 分组后的一些数据的计数

result = Sample.where(through: ['col_a', 'col_b'], status: [1, 5]).where("created_at > ?", 1.month.ago).group( :status, :through).count

返回:

{[1, "col_a"]=>7, [1, "col_b"]=>7, [5, "col_a"]=>4, [5, "col_b"]=>1 }

现在我的问题是,如何访问此散列中的值?

执行类似 results[1, "col_a"] 的操作会引发错误(错误的参数编号)。 我知道我可以通过编写一个循环并一个一个地提取值来做到这一点。

但是我想知道是否有更惯用的方式来访问这些值,类似于 results[1],也许吧?

最佳答案

results[[1, "col_a"]]
# => 7

关于mysql - 多列上的组的 Activerecord 查询返回以数组作为键的散列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37616054/

相关文章:

mysql - 计算一列中与另一列中多个定义的 ID(行)匹配的 ID 数

尝试从经度和纬度获取距离时出现Mysql错误

ruby-on-rails - Rails,从 Google Analytics 获取特定屏幕的数据

ruby-on-rails - 跳过索引创建,无法连接到 Elasticsearch

ruby-on-rails - 在 Arel 中,如何将一堆条件与 OR 结合起来?

mysql - 与 Amazon RDS MySQL & Play Framework 1.2.5(c3p0 默认设置)的连接偶尔挂起

mysql - 优先选择 MySQL 中的一行/ID

ruby-on-rails - 如何在 public_html 文件夹中为 RoR 应用程序创建新的符号链接(symbolic link)?

ruby-on-rails - 我如何找出哪个 gem 具有特定的依赖性?

ruby-on-rails - 通过实际示例了解 BDD