Method: ActiveRecord::QueryMethods#group
- Defined in:
- lib/active_record/relation/query_methods.rb
#group(*args) ⇒ Object
Allows to specify a group attribute:
User.group(:name)
=> SELECT "users".* FROM "users" GROUP BY name
Returns an array with distinct records based on the group attribute:
User.select([:id, :name])
=> [#<User id: 1, name: "Oscar">, #<User id: 2, name: "Oscar">, #<User id: 3, name: "Foo">
User.group(:name)
=> [#<User id: 3, name: "Foo", ...>, #<User id: 2, name: "Oscar", ...>]
User.group('name AS grouped_name, age')
=> [#<User id: 3, name: "Foo", age: 21, ...>, #<User id: 2, name: "Oscar", age: 21, ...>, #<User id: 5, name: "Foo", age: 23, ...>]
243 244 245 246 |
# File 'lib/active_record/relation/query_methods.rb', line 243 def group(*args) check_if_method_has_arguments!("group", args) spawn.group!(*args) end |