search
LoginSignup
114

More than 3 years have passed since last update.

posted at

updated at

whereで複数条件検索

忘れないようにメモしときます。短いです、一瞬です。

モデル名.where("(カラム名 = ?) OR (カラム名 = ?)", 変数,変数)

って感じです。
具体的に書くとこんな感じ

User.where("(id = ?) OR (id = ?)", 11, 12)

おまけ

範囲検索もしたいときがあるのでそれもついでに載せます

モデル.where(:id => 変数..変数)

具体的に書くとこんな感じ

User.where(:id => 1..10)

これで1~10がとれます。

from = 1
to = 10
User.where(:id => from..to)

とかもできると思います。

おまけ2

あいまい検索とか言われているものもついでにメモしておきます。
ここ以降はバラバラなんだよなーといったときに使います。

モデル名.where("カラム名 like '%検索テキスト%'")

具体的になるとこんな感じ。

Company.where("url like '%hegehoge/hoge/%'")

これだとurlがhogehoge/hoge/1とかhogehoge/hoge/2
とかが取得できます。。。。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
114