Ruby on rails 3 在活动记录中,如何搜索以整数开头的标题?

Ruby on rails 3 在活动记录中,如何搜索以整数开头的标题?,ruby-on-rails-3,activerecord,Ruby On Rails 3,Activerecord,我正在使用Postgres后端,但从理论上讲,它可能会改为MySQL(或者,是的,MS SQL),所以我正在寻找一个通用的例子 假设我有一个标签为“title”的列,其中包含视频游戏标题。如果我想查询所有以数字开头的,那么我使用: Games.where("title LIKE '0%' OR title LIKE '1%' OR title LIKE '2%' OR title LIKE '3%' OR title LIKE '4%' OR title LIKE '5%' OR title L

我正在使用Postgres后端,但从理论上讲,它可能会改为MySQL(或者,是的,MS SQL),所以我正在寻找一个通用的例子

假设我有一个标签为“title”的列,其中包含视频游戏标题。如果我想查询所有以数字开头的,那么我使用:

Games.where("title LIKE '0%' OR title LIKE '1%' OR title LIKE '2%' OR title LIKE '3%' OR title LIKE '4%' OR title LIKE '5%' OR title LIKE '6%' OR title LIKE '7%' OR title LIKE '8%' OR title LIKE '9%'")
这当然是可行的,它可能会在任何RDM中都有效,但看起来有点难看。有没有更好的方法使用Rails/AR 3


谢谢

使用强大的正则表达式

Games.where("title REGEXP ?","^\\d")

更多信息:

使用功能强大的正则表达式

Games.where("title REGEXP ?","^\\d")

更多信息:

这是否适用于任何后端SQL server?比如Postgres或者甚至MS SQL?因为这看起来不像是有效的MS SQL语法;错误:
PG::SyntaxError:error:syntaxer错误位于或接近“REGEXP”
@Zorayr此处存在相同的问题:ActiveRecord::StatementInvalid:PG::SyntaxError:error:syntaxer错误位于或接近“REGEXP”的位置这是否适用于任何后端SQL server?比如Postgres或者甚至MS SQL?因为这看起来不像是有效的MS SQL语法;错误:
PG::SyntaxError:error:syntaxer在“REGEXP”或其附近出现语法错误
@Zorayr此处存在相同的问题:ActiveRecord::StatementInvalid:PG::SyntaxError:error:syntaxer在“REGEXP”或其附近出现语法错误