The way I've seen, is there are two ways to kind of use OQL. 1) Using references explicitly (your 'join tables' Mendix creates) which is probably the best.
SELECT COUNT(*) FROM Loan.ResponsibleParty rp INNER JOIN rp/Loan.LoanHeader_Responsible_Party/Loan.LoanFile lf INNER JOIN lf/Loan.Bucket_LoanHeader/Loan.Bucket lb
The other way kind of mirrors Microsoft's T-SQL where you specify how to join (just use TSQL syntax).
Also, there's some good documentation here: https://world.mendix.com/pages/releaseview.action?pageId=11436153
EDIT: The multiplicity in my example is rp (*) -> (1) lf (*) -> (1) lb
It seems to work, however no data found but that is probably my mistake. No not probably but surely. Thanx!