푸린세스

mysql 페이징 본문

카테고리 없음

mysql 페이징

푸곰주 2023. 5. 6. 11:17

LIMIT과 OFFSET의 의미는 다음과 같습니다.

  • LIMIT: 행을 얼마나 가져올지

  • OFFSET: 어디서 부터 가져올지

 

select * from tbl_board;
select * from tbl_board orders limit 10 offset 10;

위 쿼리는 (B+1) 행 부터 A 행 만큼 출력을 합니다.

                 offset값 10+1행부터~ limit 10행만큼 출력한다.

 

select * from tbl_board orders limit 10 offset 20;

 


select * from tbl_board orders limit 0, 20;
위 쿼리는 (A+1)부터 B개의 행을 출력합니다.

              0+1 ~ 20개의 행을 출력한다.

A값은 offset과 동일하다고 생각하면 된다.

 

 

※ OFFSET은 INDEX를 타지 않으니 대용량 데이터를 조회할 땐 다음과 같이 조회를 해야 합니다.

- SELECT * FROM 테이블명 WHERE 숫자(A) < key LIMIT 숫자(B)
 select * from tbl_board where 10 < bno limit 10;

 

 

 


select * from tbl_board orders limit 10 ;
select * from tbl_board order by bno desc;       (최신순으로 정렬하기)

두 쿼리를 합쳐서 실행하려면

select R1.* FROM(
SELECT * FROM tbl_board 
        order by bno desc
) R1
LIMIT 10 OFFSET 0;

 

 

 

 

 

 

 

 

 

 

출처:

https://zzang9ha.tistory.com/295