ROWNUM 과 행 제한하기

여기 ID 왼쪽에 테이블마다 자동으로 생성되는 게 ROWNUM임
다만 이 ROWNUM의 경우 테이블에 고정되는 것이 아니라 유동적으로 바뀌는 것임!
그러니까 만약 2행을 지웠다고 ROWNUM이 1,3,4,5 이렇게 되는 게 아니라 다시 1,2,3,4로 새롭게 라벨링이 된다는 것 (아닐수도ㅋㅋ)
그렇기 때문에 SELECT*FROM MEMBER WHERE ROWNUM BETWEEN 6 AND 10 이라는 함수는 실행될 수가 없다
해결방법 : 기본 테이블에 ROWNUM을 합쳐주고 -> 추출
SELECT*FROM(SELECT ROWNUM NUM, MEMBER.* FROM MEMBER)
WHERE NUM BETWEEN 1 AND 5
ROWNUM과 MEMBER테이블을 합쳐주고 거기서 NUM(ROWNUM의 새로운 열이름) 1-5 추출함
원래 열을 추출할 때 MEMBER.학번(멤버 테이블의 학번열을 추출한다) 인데 테이블이 하나면 MEMBER.을 생략할 수 있음
MEMBER.*은 멤버 테이블의 모든열을 전부 추출하겠다는 의미
중복 값 제거 DISTINT
회원들의 나이가 궁금하다 다만 중복되는 나이가 있다면 하나만 출력할 것
SELECT DISTINCT AGE FROM MEMBER;
'SQL' 카테고리의 다른 글
오라클 데이터베이스 SQL(6) - SELECT문 구절 / ORDER BY / GROUP BY / HAVING / 순위함수 (0) | 2023.07.29 |
---|---|
오라클 데이터베이스(5) - 문자열 내장함수 / 숫자 내장 함수 / 날짜함수 / 형식변환함수 / NULL 관련 함수 (0) | 2023.07.29 |
오라클 데이터베이스 SQL(3) - 정규식 패턴 비교(전화번호/문자열 (0) | 2023.07.27 |
오라클 데이터베이스 SQL (2) - 연산자 / 비교연산자 / 관계연산자 / 패턴비교연산자 (0) | 2023.07.19 |
오라클 데이터베이스 SQL (1) - DDL / DML / ROLLBACK, COMMIT (0) | 2023.07.19 |