레코드를 검색 할 수있는 매우 큰 테이블이 있습니다. MySQL을 사용하고 있습니다. 메모리 예외를 피하려면 JDBC를 사용하여 결과를 하나씩 검색하거나 쿼리에 limit
절을 사용해야합니다. limit 절을 구현하는 방법 MySQL
select * from employee limit 0,1000; //query 1
select * from employee limit 1000,2000; //query 2
select * from employee limit 2000,3000; //query 3
… and so on.
방법이 (다른 또는 1) 내부에서 실행되는 쿼리입니다.
추가 질문 : 하나 하나를 검색하기 위해 JDBC를 사용하여 비교하여 성능을 될 것입니다 무엇 (본 question)
@ 닫기를 결정한 사람 : 왜 너무 광범위합니까? 그것은 얻을 수있는만큼 구체적입니다. –
나는 이것이 어떤 차이를 만들어 낸다는 것에 놀라움을 금치 못했다. 일괄 처리로 한 번에 하나의 결과 만 검색하게됩니다. 제한을두면 오는 데이터를 "페이지"할 수 있지만 결국 동일한 메모리가 사용됩니다. where 절이 오랜 시간이 걸리는 경우, 사용 된 필드가 색인되어 있는지 확인해야합니다. –