Ruby on Rails 。哪里

示例

该where方法可用于任何ActiveRecord模型,并允许在数据库中查询与给定条件匹配的一组记录。

该where方法接受哈希值,其中键对应于模型代表的表上的列名。

作为一个简单的示例,我们将使用以下模型:

class Person < ActiveRecord::Base
  #属性:first_name,:string
  #属性:last_name,:string
end

查找所有姓氏为Sven:

people = Person.where(first_name: 'Sven')
people.to_sql # "SELECT * FROM people WHERE first_name='Sven'"

为了找到的第一个名字所有人Sven和姓氏Schrodinger:

people = Person.where(first_name: 'Sven', last_name: 'Schrodinger')
people.to_sql # "SELECT * FROM people WHERE first_name='Sven' AND last_name='Schrodinger'"

在上面的示例中,sql输出显示仅在first_name和last_name匹配时才返回记录。

使用OR条件查询

用first_name == 'Bruce'OR查找记录last_name == 'Wayne'

User.where('first_name = ? or last_name = ?', 'Bruce', 'Wayne')
# SELECT "users".* FROM "users" WHERE (first_name = 'Bruce' or last_name = 'Wayne')