Select - simulaÇÃo de limit - top - no access, postgree

Fiz a string abaixo para JAVA, com base numas DICAS do Wellington Viveiro http://www.wviveiro.com.br, A IDEIA É SIMULAR o limit do MySQL no ACCESS, mas ela só retorna corretamente se o TOP do 2o SELECT for NUMERO (20,15,13 qualquer número). Se eu colocar uma VARIÁVEL, que seria o ideal, o resultado fica errado. Alguém consegue ver algum problema? tem alguma sugestão?
E. T. Como fazer o LIMIT (de registro X até Y) no POSTGREE, pois vou usar no produto final, em PRODUÇÃO.

Agradeço desde já…

P.S. Depois dessa nunca mais uso ACCESS prá teste, nem prá coisa nenhuma. Que coisa prá não seguir padrão. kkk

String sql2 = “select * from (select top 20 * from (select top “+ limiteRegistros +” * from anuncios where estado = '” + Estado + “’ and cidade = '” + Cidade + “’ and bairro = '” + Bairro + “’ and categoria = '” + Categoria + “’ and subcategoria = '” + SubCategoria + "’ order by identificador) as tabela1 order by identificador desc) as tabela2 order by identificador ";