Oracle

    분석함수 RANK OVER() /ROW_NUMBER() OVER()

    분석함수 RANK OVER() /ROW_NUMBER() OVER()

    영화 리뷰 사이트 프로젝트에 찜하기 기능을 넣었다. 하트를 클릭하면 자동으로 시퀀스값이 증가되면서 찜table에 영화값이 insert되는 기능이다. 또한 추천영화 카테고리를 만들어서 유저가 찜을 하면 추천영화에 노출이되는 기능을 만들려고했다. 하지만 영화값의 중복을 피하고자 DISTINCT, GROUP BY 절을 넣어 시도해봤으나 모두 실패하였다.... 이런저런 시도중 분석함수라는 걸 알아냈다. ▼아래는 분석함수 ROW_NUMBER() OVER() 을 사용한 쿼리 1 2 3 4 5 6 7 8 SELECT * FROM(SELECT ROW_NUMBER() OVER(PARTITION BY 영화제목 ORDER BY 등록번호 DESC ) AS RNUM, 찜테이블.* FROM 찜테이블 ) WHERE RNUM = 1..