You should be able to use the Where.in(subquery) to get the result you
want although it doesn't technically do a join.
To do this create two QueryBuilder objects, one for the "invoice" and
another for "invoice_client". For the invoice_client, define your
where however you want and then use it as the argument of the
where.in
in your "invoice" QueryBuilder.