I don’t think you need the first subquery here:
tops =
from top in "file_info_with_counts",
where: top.home_id == parent_as(:parent).home_id,
where: top.path == parent_as(:parent).path,
order_by: [asc: top.item_id],
limit: 3,
select: %{id: top.id}
from parent in "file_info_with_counts",
as: :parent,
group_by: [parent.home_id, parent.path],
lateral_join: top in subquery(tops),
on: true,
select: %{home_id: parent.home_id, path: parent.path, item_id: top.id}






















