Notice
Recent Posts
Recent Comments
Link
투케이2K
69. (MSSQL/SQL) UNPIVOT (피벗) 방식을 사용해 개별 컬럼 데이터를 행으로 변환 출력 실시 본문
[개발 환경 설정]
개발 툴 : SSMS
개발 언어 : MSSQL
[소스 코드]
/*
[요약 설명]
1. WITH : MSSQL 에서 임시 가상 테이블을 생성할 수 있습니다
2. UNION ALL : 데이터를 병합할 때 사용합니다
3. UNPIVOT 은 개별 세로 열 (국어, 영어, 수학) 데이터를 가로 행 으로 변환해줍니다
4. UNPIVOT (과목점수 FOR 과목명칭 IN (국어, 영어, 수학)) 는 개별 국어 , 영어, 수학 열 컬럼을 [과목 명칭 = 과목 점수] 행으로 표시합니다
*/
/* [임시 가상 테이블 만들기 실시] */
WITH SAMPLE_USER AS
(
SELECT '홍길동' AS 이름, 80 AS 국어, 85 AS 영어, 90 AS 수학 FROM (SELECT '1' AS DUAL) A
UNION ALL
SELECT '임꺾정' AS 이름, 70 AS 국어, 75 AS 영어, 85 AS 수학 FROM (SELECT '1' AS DUAL) A
)
/* [쿼리문] : 피벗 정렬 수행 쿼리문 (열 > 행) */
SELECT 이름,
과목명칭,
과목점수
FROM SAMPLE_USER
UNPIVOT (과목점수 FOR 과목명칭 IN (국어, 영어, 수학)) AS UNPIVOT_RESULT;
[결과 출력]
반응형
'MsSqlDB' 카테고리의 다른 글
71. (MSSQL/SQL) DATENAME 을 사용해 시간 , 분 , 초 , 밀리세컨드 , 분기 출력 실시 (0) | 2022.05.23 |
---|---|
70. (MSSQL/SQL) STRING_SPLIT 사용해 특정 문자열 기준으로 데이터 분리 후 출력 실시 (0) | 2022.05.23 |
68. (MSSQL/SQL) WITH AS UNION ALL 사용해 임시 가상 테이블 생성 및 출력 수행 (0) | 2022.05.23 |
67. (MSSQL/SQL) STRING_AGG 사용해 출력되는 컬럼 데이터를 가로(행)으로 합쳐서 출력 실시 (0) | 2022.05.23 |
66. (MSSQL/SQL) rollup 롤업 사용해 그룹 별 소계 및 합계 구하기 실시 (0) | 2022.05.23 |
Comments