[오라클] SQL - LIMIT : 결과의 개수 제한하기
Head First SQL 책에 있는 LIMIT 관한 내용을 보다가 이 내용을 참고로 다시 정리해 봅니다.
아래 쿼리는 판매자별 판매액이 높은 순서대로 추출하는 쿼리이다.
SELECT firtst_name, SUM(sales) FROM cookie_sales GROUP BY first_name ORDER BY SUM(sales) DESC |
위 결과에서 상위 두 명만 나오도록 제한(LIMIT)할 수 있다. LIMIT를 통해 결과에서 몇 개의 행이 반환될지를 정할 수 있다.
SELECT firtst_name, SUM(sales) FROM cookie_sales GROUP BY first_name ORDER BY SUM(sales) DESC LIMIT 2; -->이 부분이 결과를 두 개로 제한하는 부분이다. |
이번엔 첫번째 수상자를 빼고 두번째 수상자를 집어내보자.
SELECT firtst_name, SUM(sales) FROM cookie_sales GROUP BY first_name ORDER BY SUM(sales) DESC LIMIT 1,1; --> 두번째 결과만 추출 |
# 두개의 파라미터를 사용하면 하나를 사용할 때와는 완전히 다른 의미가 된다.
첫번째 파라미터 "1" 은 시작할 결과의 번호이다. SQL은 0부터 시작한다.
두번째 파라미터 "1" 은 반환할 결과의 수이다.
# 만약, 20위에서 30위까지 보고 싶다면 LIMIT 19,10 이라고 하면된다. SQL은 0부터 시작이니까 19는 20위부터 시작하라는 의미이고, 10은 10개의 행을 달라는 의미이다.
[출처] [오라클] SQL - LIMIT : 결과의 갯수를 제한하기|작성자 향기로운 제비꽃
'DBMS > Oracle' 카테고리의 다른 글
[Oracle] 고아가 되어버린 Synonym 찾기 (0) | 2013.01.24 |
---|---|
[Oracle] 오라클 정보 보기 View (0) | 2013.01.22 |
[Oracle] Redo Log File 미러링 (0) | 2012.12.26 |
[Oracle] Controlfile 다중화 (0) | 2012.12.26 |
[Oracle] 휴지통(RecycleBin) 관련 명령어 (0) | 2012.10.19 |