Ruby/RubyOnRails-日本語
Rails 一日一つメソッド (Day40) RANDOM()
아랑팡팡
2024. 2. 23. 13:58
728x90
Rails 一日一つメソッド (Day40) RANDOM()
1. RANDOM()とは
- RANDOM()メソッドは Railsのメソッドより SQLで提供する functionで、Railsでは、orderメソッドと一緒に使うときに、ActiveRecord内で、結果を Randomに整列することに使われる。
2. RANDOM() Function
- RANDOM()は、SQLの埋め込み関数で、呼び出されるたびにランダムな値を返す。
- Railsでは、order("RANDOM()")を使う。
3. orderメソッドとRANDOM()
- orderメソッドは、ActiveRecordで変換されるレコードの順番を付ける時に使われる。
例)User.order("RANDOM()")
- 全てのUserをrandomな順番に変換する。
4. order("RANDOM()")例題
User.order(:name)
- Userのnameフィールドを基準で昇順(asc (ascending) )で並べる。
User.order("RANDOM()")
- RANDOM() functionを使いrandomに並べる。
User.order("RANDOM()").limit(5)
- 特定のrandomレコードを選択 order("RANDOM()")と limitメソッドを使って特定の個数のレコードをレンダムに並べる。
User.where("age > 30 ").order("RANDOM()").first
- 特定の条件に当てはまるレコードの中でレンダムに選択する。
excluded_word = Voca.first
Voca.where.not(id: excluded_word.id).order("RANDOM()").limit(2)
- 特定の単語を除いてランタムに並べる。
728x90
반응형
LIST