Vincent, leave out the ON part. OQL takes care of that for you.
LEFT JOIN … ON… will become JOIN
LEFT JOIN … will become LEFT OUTER JOIN
For OQL testing and samples go to the playground: https://service.mendixcloud.com/p/OQL
I have got left join to work in an OQL Statement before, will paste an example here and see if it helps?
1st example is Customer 1-* TOnRecord
2nd example is Account 1-* UserLink
(tested in 9.7)
SELECT C/CustomerID as CCustID, C/FullName as CFullname, TR/FullName as TRFullName, FROM Main.Customer AS C LEFT JOIN C/Main.TOnRecord_Customer/Main.TOnRecord AS TR ORDER BY C/CustomerID
SELECT A/FullName as FullName, L/Name as LName FROM Administration.Account as A LEFT JOIN A/Main.UserLink_Account/Main.UserLink as L