[파이널 프로젝트] Oracle 원하는 조건만큼 특정 랭킹의 컬럼만 가져오기

hanahana·2022년 11월 1일
0
post-thumbnail

mybatis는 부등호가 먹하지 않아 rownum()을 사용할수 없다는 단점이 있었다.
그래서 다른 값을 사용해 원한는 랭킹의 값만 가져오기로 했다

ROW_NUBER()를 사용하기로 한 것이다.

  • 실제 내가 사용한 쿼리문 :
select * from(
	select nor_book_no, book_title, cover_rename, ROW_NUMBER() over (order by view_count desc) r 
	from normal_book where category = 'poem' and status like 'Y%') where r between 1 and 6;

구조는 간단하다

  • select 출력할 칼럼 from (실제로 내가 출력하고자 하는 테이블) where 새로지정한테이블명 between 시작랭크 and 종료랭크
    - 괄호 안은 이렇게 구성된다 :
    select 출력하고자 하는 컬럼, ROW_NUMBER() OVER (order by 정렬 기준이 되는 컬럼) 새로지정한테이블명 from 원테이블명 where 내가원하는 조건

이제 모든 컬럼값을 불러와 프론트 단에서 자르지 않아도 된다!!

profile
hello world

0개의 댓글