SELECT * FROM (SELECT ROWNUM AS RNUM, A.* FROM (SELECT * FROM MEMBER ORDER BY ENROLLDATE DESC) A ) WHERE RNUM BETWEEN 1 AND 4
MEMBER=테이블명
ENROLLDATE= 컬럼명임
SELECT * FROM (SELECT ROWNUM AS RNUM, A.* FROM (SELECT * FROM MEMBER ORDER BY ENROLLDATE DESC) A ) WHERE RNUM BETWEEN 1 AND 4
MEMBER=테이블명
ENROLLDATE= 컬럼명임
SELECT * FROM MEMBER ORDER BY ENROLLDATE DESC -> 맴버테이블을 등록일자 역순으로 표출(근데 내부쿼리에 order by 하면 안될텐데? 될지 모르것다) / SELECT ROWNUM AS RNUM, A.* FROM (SELECT * FROM MEMBER ORDER BY ENROLLDATE DESC) A -> 첨에 표출한 내용에 Rownum을 첨가(일련번호) / 마지막 ~~~~ WHERE RNUM BETWEEN 1 AND 4 나온넘들중에 일련번호가 1~4 사이에 있는것만 추출
내부쿼리에 오더바이해두 대영!
멤버 테이블의 모든 정보를 가져오되, 등록날짜를 내림차순으로 정렬하고, 검색된 첫번째부터 네번째까지의 컬럼의 정보를 출력한다
서브쿼리안에서 또 서브쿼리를 쓴 이유는 rownum과 order by를 혼용해서 사용할 경우 잘못된 데이터가 나올수 있으므로 order by 된 검색결과를 테이블로 사용할수있게끔 사전작업을 한 것으로 보인다.
ㄳㄳ