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 1031 게시물 읽기
No. 1031
피봇 테이블
작성자
김명수(strabius)
작성일
2003-11-10 20:18
조회수
5,020

select 날짜, data1, data2, data3 from temp_table;

01일   100   101   102
02일   200   201   202
03일   300   301   302
04일   400   401   402
05일   500   501   502
06일   600   601   602

이런식으로 된 데이타를

01일   02일   03일   04일   05일   06일
100     200    300    400     500    600
101     201    301    401     501    601
102     202    302    402     502    602

이런식으로 보여주고 싶습니다.
어떻게 해야 할지 고수님들의 답변 부탁드립니다.

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

임시테이블과 Alter Table 명령, 커서를 이용하시면 됩니다.

 

1. 기본키가 될 필드만 가진 임시 테이블 생성

Create table #tt

(

   pk    int;

)

 

2. 1에서한 테이블에 존재하는 날짜 필드를 추가합니다.

 

declare @날짜 varchar(100)

          ,@sql varchar(1000);

 

declare  cur_날짜 cursor for

   select distinct 날짜 from temp_table;

 

open cur_날짜;

Fetch next from  cur_날짜 into @날짜;

 while @@FETCH_STATUS = 0

                SET @sql =' Alter table #tt ADD   [' +          @날짜_id  + ']   VARCHAR(100);'
           EXEC (@sql)

     Fetch next from  cur_날짜 into @날짜;

    BEGIN

    END

close cur_날짜;

deallocate cur_날짜;

 

3. 2에서 필드를 추가한 테이블에 커서를 이용하여 temp_table에 있는

    내용들을 넣으시면 됩니다...

가을남자님이 2003-11-12 15:48에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1035select 한 smalldatetime 타입을 받아 저장후 다시 insert할때 [1]
겨우리
2003-11-12
4790
1033[질문] table의 소유주 변경은? [2]
이성대
2003-11-11
5397
1032[질문]트리거 - 레코드 삭제시.. [1]
탁종훈
2003-11-11
5059
1031피봇 테이블 [1]
김명수
2003-11-10
5020
1030쿼리를 통해서 mssql 테이블목록및 테이블컬럼과 타입을 보려면 [1]
유저
2003-11-10
4947
1029사이트가 느려졌어요. 혹시 디비가 문제인지. [1]
수기
2003-11-10
4374
1028디비 접속자 리스트는 어디서 알 수 있나요? [3]
디비잡이
2003-11-10
4872
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다