1つの方法は
Job.all.select{|j| j =~ /^\d+$/}
ただし、MySQLバージョンほど効率的ではありません。
もう1つの可能性は、名前付きスコープを使用して醜いSQLを非表示にすることです。
named_scope :all_digits, lambda { |regex_str|
{ :condition => [" invoice_number REGEXP '?' " , regex_str] }
}
次に、Job.all_digitsがあります 。
2番目の例では、データベースのクエリをアセンブルしているため、regex_str 構文が少し異なるRuby正規表現オブジェクトではなく、MySQL正規表現文字列である必要があります。