Query Data
Finding Records
Find by ID
user = User.find(1) # Returns User or raises
user = User.find?(1) # Returns User or nilFind by Attributes
user = User.find_by(email: "alice@example.com")
user = User.find_by?(email: "alice@example.com") # Returns nil if not foundFind All
users = User.all # Returns Array(User)First and Last
first_user = User.first
last_user = User.last
oldest = User.order(created_at: :asc).firstFiltering with Where
Basic Where
Multiple Conditions
Where with Operators
Chaining Where
Ordering
Limiting and Offsetting
Selecting Columns
Aggregations
Count
Sum, Average, Min, Max
Group By
Joins
Basic Join
Left Join
Through Associations
Scopes
Raw SQL
Execute Raw Query
Execute Raw Statement
Complex Queries
Eager Loading
Existence Checks
See Also
Last updated
Was this helpful?
