【发布时间】:2012-04-14 13:04:28
【问题描述】:
我正在使用带有 MySQL 数据库的 Rails 3,我需要以编程方式创建这样的查询:
select * from table where category_name like '%category_name_1%'
OR category_name like '%category_name_2%'
(...snip...)
OR category_name like '%category_name_n%'
考虑到表的大小和项目范围(我认为最多 500 行),我觉得使用像 think sphinx 这样的东西会有点过头了。 我知道我可以通过直接编写查询字符串来简单地做到这一点,但想知道是否有 ActiveRecord 方法来做到这一点。 official guide 上没有提到这一点,我已经在谷歌上搜索了很长时间,只是空手而归:(
另外,是否有理由(可能是 Rails 的原因?)不包含 OR 子句?
谢谢!
【问题讨论】:
-
我不确定您的意思是什么,您所在的指南中没有提及。第 2.2 节包含一个非常相似的示例(用 'and' 代替 'or' 和 '=' 代替 'like')。
-
没错,但请看我在下面对您的评论的回复...
标签: mysql ruby-on-rails ruby activerecord ruby-on-rails-3.2