문의 드립니다.

MSSQL에서 ROW_NUMBER를 사용해 페이징을 할 경우에 대한 문의 입니다.


두개의 테이블을 union 한 가상의 테이블에서 ROW_NUMBER를 사용해 페이징 할 경우 아래와 같은 상황에서 페이징처리를

어찌하면 될까요?


예를 들어


A라는 한개의 테이블에서 여러가지 조건에 의해 전혀다른 타 테이블과 join하여 

B와 C 데이터 테이블로 나눕니다.


그래서 아래와 같이 유니온으로 합쳐서 D 테이블을 만듭니다.


select * from (

   select * from B

   union

   select * from C

) D


그리고 ROW_NUMBER를 사용해 페이징을 하기위해서 (index라는 고유필드값을 기준으로)


select ROW_NUMBER() OVER (order By index asc) AS RowNum,, * from (

   select * from B

   union

   select * from C

) D where RowNum>=1 and RowNum<=20


상기처럼 하면 index값이 1~20의 값 범위에서 데이터를 출력해 옵니다.

그런데, 여러 필드의 검색조건으로 검색을 할 경우 ROW_NUMBER를 index 값으로 하기 때문에

검색되는 결과 index값이 1~20 범위 밖에 있으면 검색결과가 0이 되어 데이터 출력이 안됩니다.

당연 하겠죠. 여기서 부터가 고민거리 입니다.


이 경우에는 어떻게 해야 할까요?





No. Subject Author Date Views
Notice 2023년 1월 - SQLER의 업데이트 강좌 리스트 코난(김대우) 2023.01.02 448
10490 조건절 REPLACE 관련 문의입니다. 도와주세요 ㅜㅜ [5] 병구쓰 2019.08.23 965
10489 ms sql in memory VS NOSQL [1] sh17 2019.08.12 1302
10488 날짜 필드를 하나로 통일해서 QUERY 작성 하는법 [1] 슈토파이터 2019.08.08 1309
10487 PK 생성 시 클러스터형을 많이 쓰나요? [2] james_12 2019.08.04 1179
10486 테이블에 있는 데이터로 24시간를 사이를 채우는 방법 문의 드립니다 [2] 화이팅! 2019.08.01 1107
10485 BackupIoRequest::ReportIoError: read failure on backup device 'D:\\backup.bak'. Operating system error 13(데이터가 올바르지 않습니다.). [1] 박판규 2019.08.01 917
10484 엑셀 자료를 받아서 업로드 할때 변환오류같은데요 [2] 아싸라비아콜롬비아 2019.07.31 961
10483 [SQL2016] 쿼리 플랜 재컴파일 이슈 (Plan Cache 삭제) [2] 망고 2019.07.30 1036
10482 두개의 값을 하나로 표시 하려고 합니다 [5] 슈토파이터 2019.07.30 1019
10481 delete시 외래키 때문에 (?) 속도가 느린경우.. [1] 어렵다어려워 2019.07.29 1828
10480 sql server browser 사용 하시는분 계시나요? [1] 세기말텐션 2019.07.29 987
10479 mdb관련 질문 [1] 초코송이 2019.07.27 919
10478 SSIS 패키지 버전 8-> 6으로 변경하는 하는 방법 [1] 꿀밤 2019.07.24 779
10477 sql 상관서브쿼리 질문드립니다. [1] 잎세 2019.07.23 800
10476 현재 부서에서 상위 Root 부서까지 값이 설정된 부서번호 및 설정값 찾는 쿼리 [1] 마이더스 2019.07.22 1049
10475 프로파일러 ApplicationName 유형 질문 [1] 짱지1 2019.07.22 827
10474 접속기록보관때문에 문의합니다. [2] 하이홍구리 2019.07.21 1024
10473 SQL AlwaysON vs Mirroring 기능 장단점좀 요청 드립니다. [1] 제비 2019.07.19 1248
10472 Index가 걸려있는 컬럼 조회시, 정렬이 어떻게 선언되어 있는지 쿼리조회 가능한가요? [2] 무념 2019.07.18 1041
10471 DB변경내용 확인할 수 있나요 [3] 홍인표_314265 2019.07.15 976





XE Login