I have a simple model
class User
    has_many :logs
class Logs
related in the usual way through the foreign key logs.user_id. I\'m trying to
This achieves a join of nested select subquery with Arel:
You can add the nested inner_query and an outer_query scope in your Model file and use ...
  inner_query = Model.inner_query(params)
  result = Model.outer_query(params).joins(Arel.sql("(#{inner_query.to_sql})"))
   .group("...")
   .order("...")
For variations on this, for example to use INNER JOIN on the subquery, do the following:
  inner_query = Model.inner_query(params)
  result = Model.outer_query(params).joins(Arel.sql("INNER JOIN (#{inner_query.to_sql}) tablealias ON a.id = b.id"))
   .group("...")
   .order("...")
Add in the specific joins, constraints and groupings to each of the queries' scopes to modify the sql statement further ie:
scope :inner_query , -> (company_id, name) {
    select("...")
    .joins("left join table1 on table1.id = table2.id")
    .where("table1.company_id = ? and table1.name in (?)", company_id, name)
    .group("...")
}
This allows you to put WHERE conditions on the nested query as well as the outer query