티스토리 뷰

반응형

 

* 앞서 만들어 두었던 테이블([MSSQL] 테이블 생성 및 삭제) 기준

 

 

 

기본적인 테이블 조회 쿼리는 아래와 같다.

SELECT *
FROM EVENT
SELECT ID,
       TITLE,
       START_AT,
       END_AT,
       REG_DATE
FROM EVENT

 

첫번째 쿼리의 *은 전체 컬럼 값을 가지고 오고, 두번째 쿼리는 각 컬럼 모두를 선택하였으므로

두 쿼리는 같은 결과를 출력한다.

 

 

 

여기에서 게시판 리스트를 페이지네이션으로 처리한 경우에

MSSQL에서는 생각보다 쉽게 페이지 구현이 가능하다.

오프셋과 페이지 사이즈만 넘겨주면 알아서 해당 값들만 불러온다.

OFFSET #{offset} ROWS
FETCH NEXT #{pageSize} ROWS ONLY

여기서 오프셋이란, 시작점을 의미한다.

오프셋이 0이면 0번 지점부터, 1이면 1번 지점부터 기준이 된다. (순번이 0부터 시작)

 

예를 들어, 10개씩 데이터를 뿌려주는 게시판 리스트에서

1 페이지의 데이터를 가져오려면 아래와 같이 작성하면 된다.

SELECT ID,
       TITLE,
       START_AT,
       END_AT,
       REG_DATE
FROM EVENT
OFFSET 0 ROWS
FETCH NEXT 10 ROWS ONLY

그 다음 2 페이지에서는

SELECT ID,
       TITLE,
       START_AT,
       END_AT,
       REG_DATE
FROM EVENT
OFFSET 10 ROWS
FETCH NEXT 10 ROWS ONLY

오프셋이 10이므로 10번 지점부터 다음 10개의 데이터를 SELECT 한다는 뜻이다.

 

 

 

 

 

반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함