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 40930 게시물 읽기
No. 40930
한 행에 DATA 이어붙이기
작성자
초보
작성일
2015-09-10 10:12
조회수
8,044

 

 

안녕하세요~ 

특정기준으로 행으로 ㄴㅏ열된값을 하나의 행으로 컬럼 추가하여 넣고싶은데요..

예를들어,  아래와 같이 테이블이 있다고 하면, TRANS_SEQ (ROW_NUMBER 이용해 동일 WORK NUM 기준 SUB_ID오름차순으로 숫자 부여)  순으로

 SUB_ID를 붙여넣는 새로운 테이블을 만들고싶습니다.. (KEY값은 ID, WORKNUM)

GROUP ID SUB_ID WORK NUM TRANSN_SEQ
A S8755 3 5220759 1
B S3712 1 5220768 1
B S3712 2 5220768 2
B S3712 1 5220769 1
B S3712 2 5220769 2

↓ 이렇게 .. !!

GROUP ID SUB_ID WORK NUM
A S8755 3 5220759
B S3712 12 5220768
B S3712 12 5220769

 

어떻게 해야하는지 알려주세요 ㅠㅠ

 

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

WITH t AS
(
SELECT 'A' grp, 'S8755' id, 3 sub_id, 5220759 work_num FROM dual
UNION ALL SELECT 'B', 'S3712', 1, 5220768 FROM dual
UNION ALL SELECT 'B', 'S3712', 2, 5220768 FROM dual
UNION ALL SELECT 'B', 'S3712', 1, 5220769 FROM dual
UNION ALL SELECT 'B', 'S3712', 2, 5220769 FROM dual
)
SELECT grp
     , id
     , LISTAGG(sub_id) WITHIN GROUP(ORDER BY sub_id) sub_id
     , work_num
  FROM t
 GROUP BY grp, id, work_num
;

마농(manon94)님이 2015-09-10 13:36에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
40933SQL 배우는 학생입니다. 도움 부탁드립니다. [2]
SQL학생
2015-09-11
8125
40932union all로 테이블 별로 cnt 항목을 [1]
김인철
2015-09-11
8100
40931SELECT 정렬? 질문드려요 [2]
대국적쿼리
2015-09-10
7697
40930한 행에 DATA 이어붙이기 [1]
초보
2015-09-10
8044
40929요즘 질문이 많네요. SQL 문의입니다. [4]
이현정
2015-09-08
7977
40928디비 생성에 대해 자세히 알려주세요.. [1]
박현수
2015-09-07
7402
40927두개의 리스너를 구성을 하려고 하는데, 잘 안됩니다.. [1]
박현수
2015-09-07
7817
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.026초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다