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 34727 게시물 읽기
No. 34727
group 비슷한 쿼리 입니다. 도와주세요.
작성자
행동하자
작성일
2008-11-11 10:33
조회수
1,983

안녕하세요.

테이블에 구조

code  varchar2

이렇게 있습니다.

데이터

-----
code
-----
a
a
a
a
a
a
a
a
a
a
b
b
b
b
b
c
c
c
----

이렇게 들어가 있습니다

group 하는 조건은 code 별로 sequence 부여합니다.
------------
seq     code
------------
1       a
1       a
1       a
1       a
1       a
1       a
1       a
1       a
1       a
1       a
2       b
2       b
2       b
2       b
2       b
3       c
3       c
3       c
------------

여기서 추가 상항이 있습니다.
group 할 개수를 임의로 받아서 code별 받은 개수 만큼 group 으로 만들어서 sequence 부여해야 합니다.
만약, null 을 받을 경우 code 별로 sequence 부여하면 됩니다.

예) group 할 개수를 3을 받으면....
------------
seq     code
------------
1       a
1       a
1       a   <-- code a 3개
2       a
2       a
2       a   <-- code a 3개
3       a
3       a
3       a   <-- code a 3개
4       a   <-- code a 나머지
5       b
5       b
5       b
6       b
6       b
7       c
7       c
7       c
------------

이런식으로 나오면 됩니다.

이 글에 대한 댓글이 총 2건 있습니다.
SELECT code
     , DENSE_RANK() OVER(ORDER BY code, CEIL(rn / :n)) dr
  FROM (SELECT code
             , ROW_NUMBER() OVER(PARTITION BY code ORDER BY 1) rn
          FROM t
        )
;
마농(manon94)님이 2008-11-11 10:53에 작성한 댓글입니다.

마농님 감사합니다. ^^

행동하자님이 2008-11-11 11:29에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
34730쿼리도움...ㅜㅜ [1]
초보반
2008-11-11
1834
34729Oracle 8i에서 데이터 삭제시... [2]
end
2008-11-11
1726
34728table 에 create date 같은 컬럼이 없습니다.. [2]
엉뚱한놈
2008-11-11
2073
34727group 비슷한 쿼리 입니다. 도와주세요. [2]
행동하자
2008-11-11
1983
34725같은 데이터값별로 번호부여에 관해 질문드릴께요 [3]
헬프미
2008-11-11
2022
34723tablespace 재확보 ... [1]
gonzi
2008-11-10
2167
34722이해가 안됩니다.ORA-00907: 우괄호가 없습니다 [1]
wenzie
2008-11-10
2436
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다