シリーズ A0001、A0002、A1234、A2351 などの最大数を検索しようとしています...問題は、検索しているリストに AG108939、E092357、AL399、22-30597 などの文字列も含まれていることです。など...
基本的に、データベースで最高の A#### 値が必要です。次のクエリを使用していました。
@max_draw = Drawing.where("drawing_number LIKE ?", "A%")
AG309 などの数字が A で始まるために邪魔になるまで機能していましたが、探しているものとは異なる形式になっています。
これは正規表現を使用するとかなり簡単になると思いますが、私はこれが初めてで、正規表現を使用してこのクエリを正しく記述する方法がわかりません。nilを返すだけで試したことがいくつかあります:
@max_draw = Drawing.where("drawing_number LIKE ?", /A\d+/)
@max_draw = Drawing.where("drawing_number LIKE ?", "/A\d+/")
@max_draw = Drawing.where("drawing_number LIKE ?", "A[0-9]%")