DQL LIMIT clause is portable on all supported databases. Special attention have been paid to following facts:
Only Mysql, Pgsql and Sqlite implement LIMIT / OFFSET clauses natively
In Oracle / Mssql / Firebird LIMIT / OFFSET clauses need to be emulated in driver specific way
The limit-subquery-algorithm needs to execute to subquery separately in mysql, since mysql doesn't yet support
LIMIT clause in subqueries
Pgsql needs the order by fields to be preserved in SELECT clause, hence LS-algorithm needs to take this into consideration
when pgsql driver is used
Oracle only allows < 30 object identifiers (= table/column names/aliases), hence the limit subquery must use as short aliases as possible
and it must avoid alias collisions with the main query.