Rails 搜索 SQL 查询

Jak*_*pyś 4 ruby sql postgresql search ruby-on-rails

我试图在我的 Rails 应用程序中创建搜索方法,但遗憾的是 - 我的 SQL 知识相当可悲。我设法通过以下方式找到了在描述中搜索文本的指南:

@guides = Guide.where(['description LIKE ?', "%#{params[:search]}%"])
Run Code Online (Sandbox Code Playgroud)

或在标题中:

 @guides = Guide.where(['title LIKE ?', "%#{params[:search]}%"])
Run Code Online (Sandbox Code Playgroud)

但我不知道如何同时查看标题和描述。请帮我解决这个问题。

此外,我将不胜感激任何学习 SQL 以在 Rails 应用程序中使用的来源的建议(我猜主要是 PostgreSQL?)。

MrY*_*iji 5

您可以在 SQL 查询中使用关键字“或”:

Guide.where('description LIKE :search OR name LIKE :search', search: "%#{params[:search]}%")
Run Code Online (Sandbox Code Playgroud)

关于文档,你可以试试这个网站,它似乎提供了关于 SQL 的一般交互式课程:http : //www.sqlcourse.com/

这个网站是关于 PostgreSQL 的:http : //www.tutorialspoint.com/postgresql/postgresql_overview.htm

此外,ILIKE在这种情况下可能很有用(它不区分大小写)。