SQL에서 여러줄을 한줄로 SELECT 처리하기 > db

본문 바로가기

db

SQL에서 여러줄을 한줄로 SELECT 처리하기

페이지 정보

작성자 서방님 댓글 0건 조회 51회 작성일 13-05-02 16:18

본문

무식이 죄라 ~ 이 간단한 것을 몰라서 CURSOR로 돌려 처리를 해왔다니 OTL
여러줄을 한줄로 SELECT 처리 !

 
1.SELECT SOME_COLUMN
2.FROM SOME_TABLE;
SOME_COLUMN
내용1
내용2
내용3
 
 
1.DECLARE  @name_list NVARCHAR(MAX);
2.SET @name_list = '';
3.SELECT  @name_list = SOME_COLUMN + ' ' + CHAR(13) + CHAR(10) + @name_list;
4.FROM  SOME_TABLE WITH(NOLOCK)     
5.SELECT  @name_list AS NAME_LIST;

NAME_LIST
내용1 내용2 내용3

 

=========================

 

CREATE TABLE #Temp (Idx INT, Name NVARCHAR(50)) 
   
INSERT INTO #Temp VALUES (1,'이순신'
INSERT INTO #Temp VALUES (1,'홍길동'
   
SELECT  
  Idx, 
  STUFF(( 
    SELECT ', ' + a1.Name  
       FROM #Temp a1
     WHERE (a1.Idx = a.Idx)  
        FOR XML PATH ('')) ,1,2,'') AS Names
FROM #Temp a
GROUP BY Idx
   
DROP TABLE #Temp
 
 
 

결과:

Idx Names1 이순신, 홍길동

 

 
group_concat() 를 적은 것은 STUFF와 동일한 명령인데 Mysql에서 사용가능한 명령
 
 

댓글목록

등록된 댓글이 없습니다.

Total 447건 1 페이지
게시물 검색

회원로그인

접속자집계

오늘
143
어제
365
최대
592
전체
40,117

그누보드5
Copyright © seobangnim.com All rights reserved.
자바스크립트를 활성화 하세요![ 브라우저에서 자바스크립트를 활성화하는 방법 ]