2012-06-09 1 views
-1

테이블에서 처음 40 레코드를 얻는 방법. 자바에서 결과 세트를 사용하고 처음 40 개와 다음 40 개를 가져 오는 것이 가능하다. 여기서 paggination을 사용하지 않는다.나는 테이블에서 제한된 레코드를 얻는다.

+2

더 구체적으로하시기 바랍니다 - 같은

쿼리가 될 것입니다. 어떤 데이터베이스 (MySQL/Oracle/etc)를 사용하고 있으며 정확하게 페이지 매김 제한이나 요구 사항은 무엇입니까? –

+0

나는 Oracle을 사용하고있다. – Mohan

답변

0

페이지 매김을 찾고 모든 페이지에 40 개의 데이터 항목이 포함되어 있다고 생각합니다.

select * 
from 
    (select rownum rnm, a.* 
    from (your_query) a 
    where rownum <= :M) 
where rnm >= :N; 
0

레코드를 성능 측면에서 결과 집합으로 추출하는 것이 좋지 않을 때마다 매번 전체 테이블 데이터를로드하므로 생각합니다. 필요한 데이터 만로드하도록 페이지 매김 쿼리를 실행하면 구문이 데이터베이스에 따라 달라집니다 (예 : MySql은 Limit 절을 제공함).

0

귀하의 질문이 정확히 무엇인지 모르겠습니다. 하지만 내가 올바르게 이해한다면 DB에서 한 번에 40 개의 레코드 만 가져와 필요할 때마다 각각 40 개의 레코드 일괄 처리를 가져와야합니다.

위의 내용이 사실이라면 CachedRowSet을 사용할 수 있습니다. 이 경우 setPageSize()을 사용하여 일괄 처리의 크기를 설정할 수 있습니다.

원하는 내용이 아닌 경우 질문에 대한 설명을 추가하십시오.