내 앱에서 검색 결과를 표시해야합니다. 처음 250 개의 결과를 가져 오지만 총 결과 수를 표시해야합니다.SQLite : 최적화 카운트
이렇게하면 처음 250 개 행 이후에 결과를 가져 오는 것을 멈출 수 없으므로 모든 작업이 느려집니다. 계산할 때 루프를 반복해야합니다.
다른 접근법은 첫 번째 250 행 다음에 루프를 종료 한 다음 두 번째 COUNT() 쿼리를 수행하는 것입니다. 그러나 일부 빠른 벤치마킹에서는 COUNT() 쿼리가 이전에 동일한 쿼리를 실행했다는 사실을 이용하지 않는다는 것을 보여주었습니다.
이와 같은 시나리오를 최적화 할 수있는 방법이 있습니까? 두 개의 별도 쿼리 대신 하나의 쿼리에서 카운팅과 페칭을 결합하면 도움이 될까요? 그리고 만약 그렇다면 어떻게해야합니까?
편집 :이 하나의 테이블 내에있는 경우 죄송합니다, How do I count the number of rows returned in my SQLite reader in C#?
귀하의 질의를 표시하십시오. 인덱스가있는 열에서 count()를 수행하거나 count (*)를 수행합니까? 개수 (my_indexed_column)를 사용해보십시오. 색인을 사용하여 계산하는 것이 빠르지 만 벤치마킹해야합니다. – bot403
http://web.utk.edu/~jplyon/sqlite/SQLite_optimization_FAQ.htm – sehe
http://maxradi.us/documents/sqlite/ – sehe