강의 컨설팅 트레이닝 무료진단 무료책자 마케팅편지 마케팅정보공유 다이어리 서비스제휴 고객센터

[SQL] 페이징 처리
작성자 : 13 김영철
등록날짜 : 2009.01.23 00:25
2,897

게시판등과 같은 곳에서 페이징 처리할때 여러가지 방법이 있겠지만

SQL Server의 top 을 쓰면 편리하다고 들었다. 그래서 oracle도 같은 방법을 찾아보아서

한번 정리해 보았음

 

# 예제테이블

CREATE TABLE TB_Board (
 [nID] [int] IDENTITY (1, 1) NOT NULL ,
 [sTitle] [varchar] (100) COLLATE Korean_Wansung_CI_AS NOT NULL ,
 [sContent] [text] COLLATE Korean_Wansung_CI_AS NULL ,
 [sContentType] [varchar] (4) COLLATE Korean_Wansung_CI_AS NULL ,
 [nViewCount] [int] NOT NULL ,
 [nModifyCount] [int] NOT NULL ,
 [dCreateDate] [datetime] NOT NULL ,
 [dModifyDate] [datetime] NOT NULL ,
 [cUseFlag] [char] (1) COLLATE Korean_Wansung_CI_AS NOT NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

 

위 테이블은 SQL Server에서 생성하는 게시판테이블 Script임.

 

[사용할 변수]

pageRowCnt : 페이지에 보여줄 행수

page : 보여질 페이지

 

# SQL Server

 

sql = "SELECT TOP " & pageRowCnt & " * FROM TB_Board " & _

        "WHERE nID not in " & _

        "(SELECT TOP " & ((page-1)*pageRowCnt) & ") nID FROM TB_Board " & _

        "   ORDER BY nID DESC)" & _

        "ORDER BY nID desc"

 

 

# Oracle

 

sql = "SELECT * FROM " & _

        "(SELECT nID FROM TB_Board " & _

        "  WHERE nID NOT IN " & _

        "  (SELECT nID FROM " & _

        "    (SELECT nID FROM TB_Board ORDER BY nID DESC) " & _

        "  WHERE ROWNUM <= " & ((page-1)*pageRowCnt) & ") " & _

        "ORDER BY nID DESC) " & _

        "WHERE ROWNUM <= " & pageRowCnt

[출처] 웹디황용

"쇼핑몰·홈페이지·오픈마켓
블로그·페이스북·이메일 등의 각종 마케팅 글쓰기,
각종 광고, 영업, 판매, 제안서, 전단지
반응율 3배×10배 이상 높이는 마법의 8단계 공식"
자세히보기

Comments

번호 제목 글쓴이 날짜 조회
2685 답변형 게시판 만들때 참조할 쿼리들 M 최고의하루 12.04 2913
2684 태그를 제외하고 문자열 자르기 함수 - 1 13 김영철 01.13 2913
2683 PHP 환경변수 13 김영철 01.13 2912
2682 select BOX 동적으로 선택하기 13 김영철 01.15 2911
2681 SQL에서 COUNT와 COUNT_BIG 의 차이점은 무엇인가요 13 김영철 01.23 2911
2680 도스에서 고스트 백업파일 분할 13 김영철 01.29 2910
2679 항상 새로 고침 13 김영철 01.14 2910
2678 1-32.[음악] 음악주소 직접만들기 - ⑧ 음악소스 wma 파일로 변환 99 단국강토 02.19 2909
2677 PHP로 날짜 기간 구하는 프로그램 13 김영철 01.13 2909
2676 header("Pragma:no-cache") 13 김영철 01.13 2909
2675 [명령어] 아파치 벤치마킹 툴 -ab 13 김영철 01.29 2905
2674 FLV파일로 스트리밍을 해 봅시다. 99 단국강토 12.30 2903
2673 TOMCAT Context 추가하기 13 김영철 01.29 2903
2672 안전한 코드만 이용하기 13 김영철 01.13 2902
2671 요일, 연중/월중 몇째주 구하기 13 김영철 01.23 2902
2670 SUBSTRING(str,pos) , SUBSTRING(str FROM pos) , SUBSTRING(str,pos,len) , SUBSTRING(str FROM pos FOR len) 99 단국강토 01.08 2901
2669 onUnLoad 이벤트 제어하기 99 단국강토 02.19 2899
2668 set xact_abort on 사용시 주의점.(2) 99 단국강토 01.12 2898
열람중 [SQL] 페이징 처리 13 김영철 01.23 2898
2666 스마택 Ver 0.2 ( 소스 자동 정렬 프로그램 ) 99 단국강토 01.05 2898
2665 [함수] 초를 시간 분 초로 바꿈.. 13 김영철 01.14 2897
2664 PHP를 Eclipse로 개발하기 - 2. 설정편 13 김영철 01.13 2896
2663 [펌] 제15강 - 방명록 만들기 IV M 최고의하루 12.19 2895
2662 php전역변수 13 김영철 01.14 2894
2661 :: Transact-SQL 이란 :: 13 김영철 01.24 2893
2660 Framework Comparison Chart 13 김영철 01.14 2892
2659 다중업로드소스 - 검증완료 13 김영철 01.14 2892
2658 동적테이블 속성도 복사 13 김영철 01.29 2890
2657 [강좌] 이미지레디를 이용한 Gif만들기 10 액션쟁이 12.29 2889
2656 CSS를 활용한 INPUT FORM의 커스트마이징 기법 99 단국강토 02.09 2889
마케팅
특별 마케팅자료
다운로드 마케팅자료
창업,경영
기획,카피,상품전략
동기부여,성취