mano8801 ,
vc pode fazer sua pesquisa da seguinte maneira. Existe duas propriedade na hora da sua consulta, q eh firstResult e maxResults, ou seja, por qual registro irá começar a sua pesquisa e qntos irão retornar. Voce configurando estes parâmetros na sua query vc consegue fazer o que chamamos de “paginação”, pois conseguimos fazer next, previous, etc…
exemplo:
-suponha q o seu banco tenha 50 registros e vc configure o firstResult pra começar a partir do 10 e coloque como maxResults 20, desta maneira a sua query varrerá o seu banco a partir do registro 10 e trará os primeiros 20 registros que satisfaçam suas condições.
Em sintaxe SQL pura nao sei exatamente o nome destes comandos, pois uso Hibernate na minha Aplicação, mas sei q estes parâmetros existem com certeza. Dá uma pesquisada sobre eles que voce vai conseguir o que precisa 
Espero ter ajudado, qlq coisa posta mais ae
[]'ssssss!!!