Oracle 데이터베이스 페이지 (3)
1. 오 라 클 에서 SELECT TOP N 실현
ORACLE 은 SELECT TOP 문 구 를 지원 하지 않 기 때문에 ORACLE 에 서 는 ORDER BY 와 ROWNUM 의 조합 으로 SELECT TOP N 의 조 회 를 실현 하 는 경우 가 많다.
SELECT 1... n FROM
(
SELECT 1... n FROM ORDER BY 1... n
)
WHERE ROWNUM <= N( )
ORDER BY ROWNUM ASC
SQL> select rownum, hs_login from
(
select hs_login from t_users order by hs_login
)
where rownum < 5 order by rownum desc;
ROWNUM HS_LOGIN
---------- --------------------------------------------------
4 admin101
3 admin100
2 admin10
1 admin1
Elapsed: 00:00:00.03
2. TOP N 기록 에서 M (M < = N) 조 기록 추출
ROWNUM 은 기록 표 에 있 는 데이터 번호 의 숨겨 진 부분 이기 때문에 TOP N 개의 기록 을 얻 을 때 기 록 된 ROWNUM 을 동시에 추출 한 다음 에 이 N 개의 기록 에서 기록 번호 가 M 인 기록 을 추출 할 수 있다. 설령 우리 가 원 하 는 결 과 를 얻 더 라 도.
SELECT 1... n FROM
(
SELECT ROWNUM RN, 1... n FROM
(
SELECT 1... n FROM ORDER BY 1... n
)
WHERE ROWNUM <= N( )
ORDER BY ROWNUM ASC
)
WHERE RN = M(M <= N)
SQL> select rownum, hs_login, hs_nick_name from
(
select rownum rn, hs_login, hs_nick_name from
(
select hs_login, hs_nick_name from t_users order by hs_login
)
where rownum < 5
order by rownum desc
)
where rn = 3;
ROWNUM HS_LOGIN HS_NICK_NAME
---------- ------------- --------------
1 admin100 Lcr Admin
Elapsed: 00:00:00.08
3. 제 M 조 기록 에서 시 작 된 X 조 기록 추출
SELECT 1... n FROM
(
SELECT ROWNUM RN, 1... nFROM
(
SELECT 1... n FROM ORDER BY 1... n)
)
WHERE ROWNUM <= N (N = (M + X - 1))
ORDER BY ROWNUM ASC
)
WHERE RN >= M
SQL> select rownum, hs_uuid, hs_login from
(
select rownum rn, hs_uuid, hs_login from
(
select hs_login, hs_uuid from t_users order by hs_uuid
)
where rownum < 800
order by rownum desc
)
where rn > 790;
ROWNUM HS_UUID HS_LOGIN
---------- ---------- --------------------------------------------------
1 799 admin799
2 798 admin798
3 797 admin797
4 796 admin796
5 795 admin795
6 794 admin794
7 793 admin793
8 792 admin792
9 791 admin791
9 rows selected.
Elapsed: 00:00:00.12
주의:
우리 orderby 의 필드 는 hslogin 의 말 은 우리 가 원 하 는 효과 에 이 르 지 못 했 습 니 다. 설령 내 가 필드 hs 에 게login 에 색인 이 추가 되 었 습 니 다.하지만, 내 가 메 인 키 hs 를 사용 하면uid 시 우리 가 원 하 는 데 이 터 를 찾 을 수 있 습 니 다.
여기 서 는 좀 더 공부 해서 결론 을 내 려 야 하 는데, 그 원인 을 잠시 알 수 없다.
<
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
activemq 5.5 의 입문 은 설치, 시작, 데이터베이스 지속 화 를 포함한다Apache ActiveMQ 5.5.0 은 주로 유지보수 버 전 으로 130 개가 넘 는 문 제 를 복 구 했 으 며 대부분 bug 와 개선 이 었 다. Improved performance for offline d...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.