SQL Server 2012부터 지원되는 OFFSET ROWS FETCH 문법을 활용하여 Paging을 처리해보자.
OFFSET ROWS FETCH 사용 방법
ORDER BY 컬럼
OFFSET {건너뛸 행의 숫자} ROW
FETCH NEXT {해당 숫자만큼 행 출력} ONLY
아래 학생 데이터를 나이로 정렬하여 3개씩 출력해보자
declare @page_no int = 1
declare @page_size int = 3
SELECT studentName, studentAge
FROM dbo.Student WITH (NOLOCK)
ORDER BY studentAge
OFFSET (@page_no-1) * @page_size ROW
FETCH NEXT @page_size ROW ONLY
[1Page 3개 출력]
set @page_no = 2
set @page_size = 3
SELECT studentName, studentAge
FROM dbo.Student WITH (NOLOCK)
ORDER BY studentAge
OFFSET (@page_no-1) * @page_size ROW
FETCH NEXT @page_size ROW ONLY
-- 1. ALTER TABLE > 컬럼 삭제 -- ALTER TABLE [테이블명] DROP COLUMN [컬럼명] ALTER TABLE PRODUCT DROP COLUMN product_info
-- 2. ALTER TABLE > 컬럼 추가 -- ALTER TABLE [테이블명] ADD [추가할 컬럼명] [데이터 타입] [NOT NULL / NULL 설정] ALTER TABLE PRODUCT ADD product_info varchar(max) not null
-- 3. ALTER TABLE > 컬럼 형식 변경 -- ALTER TABLE [테이블명] ALTER COLUMN [컬럼명] [변결할 데이터 타입] [NOT NULL / NULL 설정] ALTER TABLE PRODUCT ALTER COLUMN price varchar(100)