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
운영게시판
최근게시물
MS-SQL Q&A 7103 게시물 읽기
No. 7103
컬럼의 데이터 값을 Row 형태로 조회
작성자
초보
작성일
2017-11-09 00:04
조회수
2,551

안녕하세요..

데이터 컬럼의 값을 Row  형태로 구하고자 합니다.

예를 들면 TB_RESULT  라는 테이블의 데이터 값이 아래와 같이 들어 있다고 가정 할때

attender 라는 컬럼값에 이름과 사번이 | 구분으로 들어 있습니다. 

idx    attender   ( 이름 | 사번 으로 들어가 있음)
----------------------------
1      홍길동,이길동|A1,A2
2      박나래|A3
3      홍길동,이길동,박나래|A1,A2,A3
4      김철수,오철수|A4,A5

TB_RESULT 테이블에 attender 컬럼에 사번 기준( | 뒤의 값 ) 으로 Row 형태로 데이터를 구하고 싶은데

idx    attender_sabun
1      A1
1      A2
2      A3
3      A1
3      A2
3      A3
4      A4
4      A5
이렇게 데이터를 조회 하고 싶은데 어떻게 해서 구해야 할지 문의 드립니다.
 

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

with tbl as (

     select idx, right(attender, charindex('|', reverse(attender)) -1) attender

     from tb_result

)

select idx, substring(a.attender, b.s, b.e-b.s) AS attender_sabun

from tbl a

cross apply (

    select number as s, charindex(',', a.attender+',',number+1) as e

    from master..spt_values

    where number= charindex(',',','+a.attender, number)

      and type='P') b

order by idx

;

박인호(paerae)님이 2017-11-09 10:36에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
7106MSSQL 쿼리속도 질문 [2]
킨들
2018-01-14
2584
7105checkdb 시 오류 [2]
조성배
2018-01-10
2671
7104[질문]데이터에서 1을 만날때 값을 시퀀스하게 증가시키기 [2]
말말말초보
2017-11-16
2442
7103컬럼의 데이터 값을 Row 형태로 조회 [1]
초보
2017-11-09
2551
7102오류좀봐주세요. [1]
전민주
2017-11-06
2369
7101프로시저 업데이트 쿼리 질문입니다.
박준서
2017-10-25
2421
7100조건절에 재귀쿼리는 쓸수 없나요? [1]
가을이
2017-10-19
2650
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.054초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다