私は文字列属性のモデルを持っています。属性は 'abc'、 'def'、 'ghi'または 'jkl' + countの値を持つことができます。値 'jkl' + countで記録する。属性の最初の文字セットが一致するレコードを取得する
Model.where(status[0..2]: 'jkl')
私はこれを行うには良い方法がありますか?
私は文字列属性のモデルを持っています。属性は 'abc'、 'def'、 'ghi'または 'jkl' + countの値を持つことができます。値 'jkl' + countで記録する。属性の最初の文字セットが一致するレコードを取得する
Model.where(status[0..2]: 'jkl')
私はこれを行うには良い方法がありますか?
ワイルドカード
Model.where('status LIKE ?', 'ijk%')
ターゲット文字列が最初であることを知っているので、それは実際には効率的ではないようです。 – user2320239
このクエリは、最後にワイルドカードを追加したため、 'ijk'で始まるステータスを検索します。 –
このクエリは' vvijk '' ijkvv'または 'ijksdd'のみで、あなたが望むものだと思っています。 –
ええ申し訳ありませんが、JKLでクエリように使用することができます。 – user2320239