`

Rails 对多个字段分组

阅读更多
Active Record 的功能性查询例如:Model.count Model.avg都不支持多个字段的分组操作。

实际上使用all和map和though会比较容易实现同样效果如下:

Item.all(
  :select => 'COUNT(*) AS count, age, gender',
  :group => 'age, gender'
).map {|i| [i.age, i.gender, i.count.to_i] }
分享到:
评论

相关推荐

    Rails项目源代码

    在这个项目中,`User`和`Image`模型可能会与数据库中的相应表关联,通过定义属性和关系,如`has_many :images`表示一个用户可以拥有多个图片。 5. **路由配置**: Rails的路由系统将URL映射到控制器的行动上,如`/...

    ruby on rails对mongodb的操作

    最后,`Rails应用中MongoDB+MySQL杂交`的话题意味着在同一个应用中同时使用MongoDB和MySQL是可能的。这通常用于混合使用关系型数据和非关系型数据,或者在迁移过程中逐步替换数据库。在这种情况下,需要分别配置`...

    Ruby on Rails Guides v2 - Ruby on Rails 4.2.5

    ### Ruby on Rails Guides v2 - Ruby on Rails 4.2.5 #### 一、重要概念及基础假设 - **重要概念**:本指南旨在帮助...随着对Rails的深入了解,你将会发现更多高级特性和应用场景,为实际项目开发提供更多可能性。

    关于rails 3.1 cucumber-rails 1.2.0

    每个特性文件描述了一个或多个业务场景,并使用关键字`Given`、`When`、`Then`等来定义步骤。这些步骤的实现位于`step_definitions`目录下,通常包含Ruby代码,它们将Gherkin步骤与实际的代码逻辑关联起来。通过这种...

    Rails

    标题 "Rails" 指的是 Ruby on Rails,一个开源的Web应用程序框架,它基于Ruby编程语言,遵循MVC(模型-视图-控制器)架构模式。Rails由David Heinemeier Hansson在2004年创建,其设计理念是强调代码的简洁性、DRY...

    Rails 101S

    - **Active Record Associations**:深入探讨Active Record的关联关系管理,如一对一、一对多等关联类型。 #### 总结 《Rails 101S》不仅是一本适合新手入门的教程,也是进阶开发者的好帮手。通过实践这些基础知识...

    rails2-sample

    这里还会涉及如何创建第一个Rails项目,以及如何运行服务器以查看项目。对于新手来说,这一步骤是至关重要的,因为它将奠定后续学习的基础。 #### 3. Introducing Ruby(介绍Ruby) Ruby是一种动态、面向对象的...

    rails2.3.2

    Ruby on Rails 2.3.x 版本包含了多个重要的特性,例如: 1. Active Record:这是 Rails 的 ORM(对象关系映射)层,负责处理数据库交互。在这一版本中,Active Record 提供了更强大的查询接口,包括 SQL 方法的集成...

    rails敏捷开发的购物车系统

    创建购物车模型(Cart)和商品模型(Product),定义它们之间的关系,如多对多关系,通过一个关联表记录每个购物车包含的商品及其数量。使用`has_and_belongs_to_many`或`has_many :through`关联来实现这一关系。 ...

    提升Ruby on Rails性能的几个解决方案

    简介 Ruby On Rails 框架自它提出之日...Rails 是一个真正彻底的 MVC(Model-View-Controller) 框架,Rails 清楚地将你的模型的代码与你的控制器的应用逻辑从 View 代码中分离出来。Rails 开发人员很少或者可能从未遇到

    Rails实现字段加密存储

    ActiveSupport::MessageEncryptor 是 Rails 基于 openssl 封装实现的一个类,可用于对一个对象进行加密、解密操作。例如: salt = SecureRandom.random_bytes(64) key = ActiveSupport::KeyGenerator.new('password...

    rails查询学习笔记

    6. **Group和Having**:用于对数据进行分组和过滤,如`Model.group(:category).having('count(*) > 1')`可以找出某个分类下有多个记录的情况。 7. **Ransack**:这是一个流行的查询工具,提供了更灵活的搜索和过滤...

    使用Aptana+Rails开发Rails Web应用(中文)

    安装过程中,遵循提示进行,确保选择自定义安装并勾选Rails相关的插件,以便在Aptana中获得对Rails的全面支持。 安装完成后,打开Aptana Studio,创建一个新的Rails项目。在“File”菜单中选择“New”然后点击...

    rails 2.3.2离线安装rails 2.3.2离线安装

    rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails ...

    Ruby on Rails 指南 v5.0.1 中文版

    - **创建复杂表单**:介绍如何构建包含多个嵌套字段的复杂表单。 #### ActionController概览 - **控制器的作用**:解释控制器在MVC架构中的角色。 - **控制器命名约定**:说明控制器命名的规则和约定。 - **方法和...

    web开发之rails最新调试通过购物车代码

    5. **会话(Session)**:Rails中的会话管理允许在多个请求之间保持状态,这对于购物车尤为重要,因为用户可能需要在不同时间查看或修改购物车。 6. **数据库迁移(Database Migrations)**:Rails提供了方便的工具...

    Rails recipes

    书中的读者评价非常高,多位业界知名人士对其给予了高度评价。比如,Rails框架的创始人David Heinemeier Hansson就推荐这本书,并赞扬其为“Rails程序员的经典资源”。其他读者也表示,这本书不但能提供即刻解决问题...

    jquery-rails, 一个 gem,用于自动使用jQuery和 Rails 3.zip

    jquery-rails, 一个 gem,用于自动使用jQuery和 Rails 3 railsjQuery 面向 Rails 如此伟大。这里 gem 提供:jQuery 1.7.2jQuery UI 1.8.18 ( 仅适用于 javascript )jQuery UJS适配器assert_select_j

Global site tag (gtag.js) - Google Analytics