database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 41108 게시물 읽기
No. 41108
rownum 관련 문의 드려요...
작성자
도와주세욤...
작성일
2016-03-24 15:10
조회수
7,563

안녕하세욤....^^;

많은 도움 받고 있는 초보 입니당..

음... rownum 관련해서요....

예를 들면... 데이터가

6B11C1

6B10C1

6B09C1

이런식으로 숫자와 텍스트가 섞인 데이터가 한 100개가 있으면 이 데이터 중 ORDER BY COL DESC 해서... 가장 큰 값 부터 30개만 가져 오고 싶어요..

SELECT COL1 FROM TABLE WHERE ROWNUM <=30 ORDER BY COL1 DESC

근데... 이게 잘 않되요.. 물론 그 컬럼에는 인덱스는 없구욤...

MSSQL 은 그냥 TOP 딱 부치면 되던데.. 오라클은.. ㅜㅜ

도와주세욤... ㅜㅜ

이 글에 대한 댓글이 총 2건 있습니다.

원하는 결과를 얻기 위한 조건은?
  Order By 수행 후 Rownum 조건 체크해야 겠죠.
  그러나 Order By 구문의 처리순서는 가장 늦습니다.
  Where 절이 먼저 처리되지요.
  Order By 가 먼저 수행되도록 개선해야 합니다.


SELECT *
  FROM (SELECT col1
          FROM table
         ORDER BY col1 DESC
        )
 WHERE ROWNUM <= 30
;

마농(manon94)님이 2016-03-24 16:19에 작성한 댓글입니다.

옴마... ㅜㅜ

마농님... 아 그렇군요.. where 절이 먼저 실행되는 군요...

정말 큰 도움 되었욤... 이렇게 또 하나 배우고 가네용.. ^^;;

감사드려요... 언제나 홧팅 ^^

도와주세욤...님이 2016-03-24 16:32에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
41111특정문자 개수 세는 방법 알려주세요 [1]
초보임당
2016-03-29
7851
41110SP 호출 후 OUT 파라미터로 SELECT구문 생성 가능여부
권순환
2016-03-28
7360
41109count 관련 문의 [1]
초보
2016-03-28
7316
41108rownum 관련 문의 드려요... [2]
도와주세욤...
2016-03-24
7563
41107listener.log 생성 되지 않게 하는 방법 문의 [1]
이성근
2016-03-24
7517
41106ibatis 태그치환 CDATA 관련 질문입니다
도와줍숑
2016-03-22
7748
41103CLOB 데이터를 타 업체 전달하는 방법은?
앙마승재
2016-03-18
7316
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.054초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다