rownum
방법 1
select *
FROM (
SELECT id, userId, title, content, readCount, createDate, rownum no
FROM board WHERE rownum > 0 and rownum <= ((page*3)+3)
) WHERE no > page*3 and no <= (page*3)+3 ;
방법 2
index로
인덱스 명이 궁금하면 아래와 같이 테이블에 인덱스에서 볼 수 있다.
SELECT /*+ INDEX_DESC(BOARD SYS_C00776)*/id, title, content
FROM board
WHERE id > '0';
/*+ 여기는 오라클 힌트 주석말고 */
인덱스로 ORDER BY 정렬하는 거랑 인덱스로 차례대로 가져오는 거랑 차이
ORDER BY - 가져와서 정렬다시 하는 거 (연산을 더 많이 해야해서 느림)
인덱스 - 식별자로 바로 가져옴. (따로 정렬할 필요가 없지요)
인덱스로 하는게 더 좋아요!
통상 15%이내 데이터가 있으면 인덱스 스캔하는게 좋음
그냥 전체 다 필요하면 full scan이 더 좋죠 다 그냥 처음부터 끝까지 하지만
게시글을 맨 뒤에까지 가는 사람이 없는데 그 정보가 필요하면 검색기능으로 처리할 예정
rownum으로 퍼올릴때는 무조건 1번 부터 퍼올릴수 있다.
id 삭제될수도 있다. 조각모음해야하니까
그래서 rownum으로 가져올 수 밖에 없음
index스캔해서 다퍼올리는데 내가 필요한 만큼만
previoius 막기 - param이 0이면 막아요
next 막기 함수 만
'JSP' 카테고리의 다른 글
블로그 만들기 - 프로필 사진 업로드 / UUID(Java.util) (0) | 2020.06.11 |
---|---|
블로그 검색기능 (0) | 2020.06.10 |
패스워드 해쉬 암호화 - SHA356, slat (0) | 2020.06.09 |
삭제하기 (0) | 2020.06.08 |
블로그 상세보기,dto/수정하기 (0) | 2020.06.08 |