안녕하세요..
데이터를 1월 부터 12월까지 보여줄려고 하는데..
감이 오질 않아서 문의 드립니다.
데이터 입력 현황
컬럼1 컬럼2 컬럼3
201701 A부서 3점
201701 B부서 1점
201701 C부서 1점
201701 D부서 2점
201702 A부서 3점
201702 B부서 2점
201702 C부서 1점
201702 D부서 2점
201703 A부서 3점
201703 B부서 2점
201703 C부서 1점
201703 D부서 2점
컬럼1은 년월 입력필드 입니다.
위와 같이 입력된 데이터를
201701 201702 201703 .... 201712
A부서 3 3 3
B부서 1 2 2
C부서 1 1 1
D부서 2 2 2
위와 같이 표기를 하고 싶습니다.
각 부서의 점수를 월별로 조회를 할려고 하는데
감이 오질 않습니다.
4월달 부터 입력된 데이터가 없어서
01월 부터 12월까지.. 모든 필드가 조회 되어야 합니다.
좋은 방법이 있으면 부탁드리겠습니다.
감사합니다.
Comment 2
-
이리
2017.12.20 10:01
이렇게 하시면 비슷한 결과가 나오긴 합니다.; WITH CTE(컬럼1, 컬럼2, 컬럼3)AS(SELECT '201701', 'A부서', '3점' UNION ALLSELECT '201701', 'B부서', '1점' UNION ALLSELECT '201701', 'C부서', '1점' UNION ALLSELECT '201701', 'D부서', '2점' UNION ALLSELECT '201702', 'A부서', '3점' UNION ALLSELECT '201702', 'B부서', '2점' UNION ALLSELECT '201702', 'C부서', '1점' UNION ALLSELECT '201702', 'D부서', '2점' UNION ALLSELECT '201703', 'A부서', '3점' UNION ALLSELECT '201703', 'B부서', '2점' UNION ALLSELECT '201703', 'C부서', '1점' UNION ALLSELECT '201703', 'D부서', '2점')SELECT 컬럼2 AS ' ', SUBSTRING([201701], 1, 1) AS [201701], SUBSTRING([201702], 1, 1) AS [201702], SUBSTRING([201703], 1, 1) AS [201703], SUBSTRING([201704], 1, 1) AS [201704], SUBSTRING([201705], 1, 1) AS [201705], SUBSTRING([201706], 1, 1) AS [201706], SUBSTRING([201707], 1, 1) AS [201707], SUBSTRING([201708], 1, 1) AS [201708], SUBSTRING([201709], 1, 1) AS [201709], SUBSTRING([201710], 1, 1) AS [201710], SUBSTRING([201711], 1, 1) AS [201711], SUBSTRING([201712], 1, 1) AS [201712]FROM(SELECT *FROM CTEPIVOT(MAX(컬럼3)FOR 컬럼1 IN ([201701], [201702], [201703], [201704], [201705], [201706], [201707], [201708], [201709], [201710], [201711], [201712])) AS P) AS T1 -
호짱
2017.12.20 10:11
빠른 답변 감사드립니다.
빨리 테스트 해 봐야겠습니다.
감사합니다.