当前位置: 首页 > 面试题库 >

Rails ActiveRecord的where或子句

慕容兴贤
2023-03-14
问题内容

我正在寻找写一个ActiveRecord查询,这就是我下面的内容。不幸的是,您不能像这样使用OR。最好的执行方式是什么?
category_ids是整数数组。

.where(:"categories.id" => category_ids).or.where(:"category_relationships.category_id" => category_ids)

问题答案:

一种方法是还原为原始sql

YourModel.where("categories.id IN ? OR category_relationships.category_id IN ?", category_ids, category_ids)


 类似资料:
  • 问题内容: 我今天输入了错误的查询,但它仍然有效,并给出了预期的结果。我的意思是运行此查询: 但是我不小心跑了这个查询 (请注意,而不是最后一个子句中的) 并且都从用户ID返回了正确的员工ID。 这两个查询有什么区别?第二种形式是否仅联接满足条件的2个表的成员,而第一种形式将联接整个表,然后运行查询?一个效率比另一个效率高吗?还有其他我想念的东西吗? 谢谢! 问题答案: 对于这样的内部联接,它们在

  • 本章提供了有关如何使用JDBC应用程序从表中选择记录的示例。 这将在从表中选择记录时使用WHERE子句添加其他条件。 在执行以下示例之前,请确保您具备以下示例 - 要执行以下示例,您可以使用实际用户名和密码替换用户名和密码。 您的MySQL或您正在使用的任何数据库已启动并正在运行。 所需的步骤 (Required Steps) 使用JDBC应用程序创建新数据库需要以下步骤 - Import the

  • 我想对group by子句和where子句使用hibernate标准。 就像我有一个sql这样: 在使用标准组BY时,我如何在hibernate投影中传递截断的日期。

  • 我正在使用Cassandra 1.1.2我正在尝试将RDBMS应用程序转换为Cassandra。在我的RDBMS应用程序中,我有以下名为table1的表: Col1:字符串(主键) 此表对2亿记录进行计数。主要使用的查询如下: 在Cassandra中,我使用以下语句创建表: 我将主键更改为一个额外的列(我计算应用程序中的键)。导入一些记录后,我尝试执行以下cql: 这个结果是: 查询从col3=6

  • 在MariaDB中,子句与,,和语句一起使用来选择或更改想要更改的满足指定特定行记录。 它是一个在表名后面出现的语句。 语法 注意:子句是一个可选的子句。它可以和,,,运算符一起使用。 1. WHERE子句与单一条件 示例: 我们有一个表,里边有一些数据。假设要查询表中的小于的所有记录。 执行上面查询语句,得到以下结果 - 2. WHERE子句与AND条件 为了方便演示,这里再插入一条数据 - 当

  • 主要内容:语法,实例SQLite的 WHERE 子句用于指定从一个表或多个表中获取数据的条件。 如果满足给定的条件,即为真(true)时,则从表中返回特定的值。您可以使用 WHERE 子句来过滤记录,只获取需要的记录。 WHERE 子句不仅可用在 SELECT 语句中,它也可用在 UPDATE、DELETE 语句中,等等,这些我们将在随后的章节中学习到。 语法 SQLite 的带有 WHERE 子句的 SELECT