Using Macro API for ecto queries
from(p in Post, join: bp in BranchPost, on: bp.branch_id == p.id, join: bl in BranchLocation, on: bl.location_id == bp.location_id, order_by: [p.name, p.type], where: bl.status_id == ^status_id, distinct: true ) |> Repo.all(prefix: account)
This I tried to write in form of Macro API (Expressions)
Post |> join(:inner, [p], bp in BranchPost, on: bp.post_id == p.id) |> join(:inner, [bp], bl in BranchLocation, on: bl.location_id == bp.location_id) |> where([bl], bl.status_id == ^status_id) |> order_by([p], [p.name, p.type]) |> distinct(true) |> put_query_prefix(account) |> Repo.all()
This doesn’t seem to work and I know that it is because of my second join and where clause. How to do multiple joins? As far as I see in the docs, there is example for joining two tables but not three tables using macro API. Any guidance is appreciated.