Vorrei sapere quale dei sotto esegue migliore in termini di tempo per eseguire query con 100K + recordMyBatis RowBounds vs Oracle query di impaginazione utilizzando rownum e subquery nidificato
1) di Oracle Impaginazione
SELECT *
FROM (
SELECT id, col1, col2, rownum rn
FROM (
SELECT /*+ first_rows(50) */ id, col1, col2
FROM table1
ORDER BY id DESC
)
WHERE rownum <= 50
)
WHERE rn >= 20;
2) Impaginazione utilizzando MyBatis RowBounds.
MyBatis RowBounds utilizza il normale JDBC e dopo aver attivato la selezione salta i primi 20 record e quindi recupera i successivi 30 (pagine).
Inoltre, l'approccio di MyBatis diventerà più lento man mano che il numero di pagine aumenta man mano che vengono saltate più righe?