eGovFrame 표준프레임워크 포털

메뉴 건너띄기
상단메뉴 바로가기
본문 바로가기

이 누리집은 대한민국 공식 전자정부 누리집입니다.

본문 영역

적용 지원, FAQ, Q&A 게시판을 통해 기술 문제 해결을 지원합니다.

묻고 답하기

MSSQL의 SQL맵 쿼리 질문
  • 작성자

    정*랑

  • 작성일

    2014-01-14 14:01:28

  • 조회수

    1,361

  • 구분

    실행환경

  • 진행상태

    완료

질문

수고많으십니다.
아래의 SQL문은 SAMPLE소스의 질의 인데요..
이것을 MS-SQL용으로 질의를 던지려하는데..페이징 처리하는 쿼리를 잘 몰라서요..
MS-SQL에서는 어떻게 바꿔야하는지요?
---------------------------------------------------------
SELECT ID, NAME, DESCRIPTION, USE_YN, REG_USER
FROM SAMPLE
WHERE 1=1
<isEqual prepend="AND" property="searchCondition" compareValue="0">
ID = #searchKeyword#
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
NAME LIKE '%' || #searchKeyword# || '%'
</isEqual>
ORDER BY ID DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#

답변

안녕하세요. 표준프레임워크 센터입니다.

MS-SQL에서 페이징 처리는 TOP을 이용한 아래의 쿼리를 참고하여 구현해 보시기 바랍니다.

SELECT * FROM [테이블]
WHERE [키값] IN
(SELECT TOP [한 페이지당 게시물수] [키값] FROM
(SELECT TOP [한 페이지당 게시물수] + [시작 인덱스] [키값]
FROM [테이블]
ORDER BY [키값] DESC) AS A
ORDER BY [키값] ASC)

감사합니다.

이 페이지의 구성

묻고 답하기