我有一些大规模的 SQL 请求,涉及跨我的 rails 应用程序中的各种模型进行连接。单个请求可能涉及 6 到 10 个表。
为了更快地运行请求,我想在连接中使用子查询(这样我可以在连接之前过滤这些表并将列减少到我需要的列)。我正在尝试使用 ARel 来实现这一目标。
我以为我在那里找到了解决问题的方法:How to do joins on subqueries in AREL inside Rails,但事情一定已经改变了,因为我得到了undefined method '[]' for Arel::SelectManager
.
有谁知道如何实现这一点(不使用字符串)?