SQL Server에서 열을 행으로 변환하려면 어떻게 해야 합니까?
SQL Server의 열-행 변환
데이터베이스 열을 행으로 변환하는 것은 데이터 분석 및 재구성에서 중요한 기술입니다. SQL Server에서 이 변환을 수행하는 방법에는 여러 가지가 있으며 각각 고유한 장점과 고려 사항이 있습니다.
방법 1: UNPIVOT 함수
UNPIVOT 함수는 기본적으로 열에서 행으로의 변환을 지원합니다. UNPIVOT의 구문은 다음과 같습니다.
UNPIVOT (indicatorvalue FOR indicatorname IN (Indicator1, Indicator2, Indicator3, ...)) AS unpiv
예:
SELECT id, entityId, indicatorname, indicatorvalue FROM yourtable UNPIVOT ( indicatorvalue FOR indicatorname IN (Indicator1, Indicator2, Indicator3) ) unpiv;
방법 2: UNION ALL의 CROSS APPLY 사용
UNION ALL을 사용한 CROSS APPLY는 열을 행으로 변환하는 또 다른 방법입니다. 제공된 열을 기반으로 행을 반복적으로 결합합니다.
SELECT id, entityid, indicatorname, indicatorvalue FROM yourtable CROSS APPLY ( SELECT 'Indicator1', Indicator1 UNION ALL SELECT 'Indicator2', Indicator2 UNION ALL SELECT 'Indicator3', Indicator3 UNION ALL SELECT 'Indicator4', Indicator4 ) c (indicatorname, indicatorvalue);
방법 3: VALUES의 CROSS APPLY 사용
이 방법은 CROSS APPLY의 VALUES 절을 활용하여 열 이름과 값을 지정합니다.
SELECT id, entityid, indicatorname, indicatorvalue FROM yourtable CROSS APPLY ( VALUES ('Indicator1', Indicator1), ('Indicator2', Indicator2), ('Indicator3', Indicator3), ('Indicator4', Indicator4) ) c (indicatorname, indicatorvalue);
방법 4: 동적 SQL
많은 수의 열을 해제해야 하는 시나리오의 경우 동적 SQL은 이 프로세스를 자동화할 수 있습니다.
DECLARE @colsUnpivot AS NVARCHAR(MAX), @query AS NVARCHAR(MAX) SELECT @colsUnpivot = STUFF(( SELECT ',' + QUOTENAME(C.column_name) FROM INFORMATION_SCHEMA.COLUMNS AS C WHERE C.table_name = 'yourtable' AND C.column_name LIKE 'Indicator%' FOR XML PATH('') ), 1, 1, '') SET @query = 'SELECT id, entityId, indicatorname, indicatorvalue FROM yourtable UNPIVOT ( indicatorvalue FOR indicatorname IN (' + @colsUnpivot + ') ) u' EXEC sp_executesql @query;
특정 시나리오에 가장 적합한 방법을 선택하면 SQL Server에서 열 간 변환을 효율적으로 수행할 수 있습니다.
위 내용은 SQL Server에서 열을 행으로 변환하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Alter Table 문을 사용하여 MySQL에서 테이블을 어떻게 변경합니까?

MySQL의 문제를 해결하는 방법 공유 라이브러리를 열 수 없습니다.

Linux에서 MySQL을 실행합니다 (Phpmyadmin이있는 Podman 컨테이너가 포함되지 않음)

인기있는 MySQL GUI 도구는 무엇입니까 (예 : MySQL Workbench, Phpmyadmin)?
