2017-11-24 1 views
-2

이전 개발자가 개발 한 응용 프로그램을 가지고 있습니다. 이제 해당 응용 프로그램에는 17000 개의 항목이 있으며 응용 프로그램이 느려집니다. 아주 천천히 모든 데이터를로드하는 데 10 분이 걸립니다.php에서 my sql을 사용하여 페이징을 수행하는 방법

JS로 페이징 할 수있는 모든 데이터를 한 번에 가져오고 있기 때문입니다.

첫 페이지에 대해 처음 10 개의 항목을 가져오고 사용자가 다음 페이지 또는 페이지 2 버튼을 클릭하면 다음 10 개의 데이터를 얻기 위해 쿼리가 실행되어야합니다.

현재 응용 프로그램 쿼리 :

SELECT bm.bank_name,b.bank_ifsc,e.emp_id,e.emp_code,e.first_name,e.middle_name,e.last_name,e.active_status as emp_status,e.account_no 
FROM tblemployee e 
Left Join tblbank_mst bm on bm.bank_id=e.fk_bank_id 
Left Join tblbank b on b.bank_ifsc_id=e.fk_bank_ifsc_id 
WHERE e.del_status=0 
AND e.role_id=4 
AND e.is_admin=0 
ORDER BY first_name 

답변

0

당신은 몇 단계

을 할 필요가

1 단계 : 자사하지 의미 다음 1로 설정 URL 페이지 1의 첫 번째 집합을 의미하는 경우 page을 설정하는 필요 기록

단계 2 : 세트 번호. 예 페이지 1 계산 동적부터 레코드 번호 : 예를 들어, 페이지 당 기록 페이지

당 5 개 레코드

3 단계 1 2 페이지에서 시작 6 3 페이지부터 시작 11

에서 시작 다음은 인쇄 할

SELECT bm.bank_name,b.bank_ifsc,e.emp_id,e.emp_code,e.first_name,e.middle_name,e.last_name,e.active_status as emp_status,e.account_no 
FROM tblemployee e 
Left Join tblbank_mst bm on bm.bank_id=e.fk_bank_id 
Left Join tblbank b on b.bank_ifsc_id=e.fk_bank_ifsc_id 
WHERE e.del_status=0 
AND e.role_id=4 
AND e.is_admin=0 
ORDER BY first_name 
LIMIT $starting, $pagination 

같은 쿼리를 추가

first page : LIMIT 1,5 
second page : LIMIT 6,5 
third page : LIMIT 11,5 

등등. 하단 영역에서

, 당신은 돌아 가기
    • 먼저
    • 처럼 다음 탐색을 설정해야
    • 마지막으로 당신이 전류에 따라 페이지를 설정하지 할 필요가

  • 페이지.

    관련 문제