Are all the tables used in the Join located at the Orcle server?
If so, I recommend to change it to a remote Query (at least for all tables located at the Oracle server).
In that remote query yo should use ROWNUM<100 again, since it'll be executed using Oracle syntax.