- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想同时使用 find_by_sql 和包含。
我使用 find_by_sql 是因为我在 from 内部编写 select 以利用索引。
某种方式,如果我使用左连接,索引将被忽略。
但是, find_by_sql 不返回 ActiveRecord_Relation 而是返回 Array 对象,所以我不能写
like Model.find_by_sql("select * from (select * from table limit 10)table left join rel_table on ...").includes(:rel_table,...) .
最佳答案
您不能调用includes
在结果数组上,但您可以手动调用 Rails 预加载器来做同样的事情。
见 preload associations with find_by_sql和 ARel mimic includes with find_by_sql .
array = Model.find_by_sql("select * from ...")
# Rails 3 and 4.0.x
ActiveRecord::Associations::Preloader.new(array, [:rel_table]).run
# Rails 4.1+
ActiveRecord::Associations::Preloader.new.preload(array, [:rel_table])
关于sql - ActiveRecord:find_by_sql 并包括,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27009705/
我想使用 find_by_sql 方法代替事件记录查询接口(interface),因为我在编写自己的 SQL 时获得了灵 active 。 例如, 在 SQL 中将查询中的表从小到大排序被认为是一种很
我想同时使用 find_by_sql 和包含。 我使用 find_by_sql 是因为我在 from 内部编写 select 以利用索引。 某种方式,如果我使用左连接,索引将被忽略。 但是, find
我有一个 fairly complex sql query我很确定我无法使用 ARel (Rails 3.0.10) 来完成 查看该链接,但它有一些连接和一个 where isn't 子句,我很确定这
我需要对 PHP ActiveRecord 使用自定义查询,因为我需要 UNION 语句,即使我在两个查询上查询同一个表。我希望能够将我的模型中作为 belongs_to 的列包含到结果中。 这是我的
我正在使用 find_by_sql 对这样的关系进行左连接计数: scope :popular, lambda{ |since_date = false| query = "select
我的sql查询是 SELECT MAX(sale_money) FROM ( SELECT SUM(sale_money) sale_money FROM sales WHER
我想执行这样的查询 SELECT * FROM ( SELECT * FROM products ORDER BY price ASC ) AS s GROUP BY item; 返回每个项目的所有产
因此,在 Rails 中,我使用 sqlite3 进行开发,使用 mysql 进行生产。 Sqlite3 和 mysql 以不同方式处理 bool 值(sqlite3 中的“t”或“f”以及 mysq
我的 RoR 脚本中有以下调用: Foo.where("event = 'Login'").group('user_id').order('user_id ASC').count() 这为我提供了所有
我正在尝试使用我创建的存储过程从我的 MySQL 数据库中获取对象。 @locs = Location.find_by_sql("CALL geodist(100.4058, 37.7907, 100
是否存在某种与 mongoid 等价的 find_by_sql,您可以在其中传递一个 mongo 查询并从结果中具体化 Mongoid::Document s? 最佳答案 Mongoid 包装 Col
我正在使用 find my sql,我想在数据库中计算一些东西并添加到我的模型中。 我会尽量简化代码 class User < ActiveRecord::Base attr_accessor
我正在尝试使用 find_by_sql 查询我的 Devise 创建的表,但遇到了一个奇怪的错误。 User.find_by_sql("select username from user") 结果:
我正在使用 RoR 和 mysql 数据库。我想将时间戳列转换为字符串,所以我有 SQL: @books = Book.find_by_sql("select id, name, date_forma
我是 Rails 的新手,但我正在尝试提取一些与用户偏好 (current_user.industry) 相匹配的数据。 rails 中是否有使用 SQL 提取数据并使用来自助手或其他 @variab
我在以下 MySQL 语句中使用日期变量时遇到问题。日期变量包含一个表示日期的字符串。 personal = Event.find_by_sql ["SELECT *
我们有一个相当简单的查询,可以与 AR 查询结构完美配合: user = User.includes({:network => :product}).joins({:network => :produ
我正在尝试将一些基本的报告屏幕放在一起。我将一些相当复杂的 SQL 查询输入到 ActiveRecord 的 find_by_sql 方法中。我在这里遇到的问题是我丢失了原始查询中给出的列顺序。我假设
我们公司喜欢计算晦涩指标的报告——无法使用 ActiveRecord 的查找器(find_by_sql 除外)计算的指标,而 ruport 基于 ruby 的功能太慢了。 是否有插件或 gem 或
我有一个连接到外部数据库的模型,我使用 find_by_sql 方法进行查询,如下所示: External.find_by_sql("SELECT * from table") 但是,当我添加 .pa
我是一名优秀的程序员,十分优秀!