이것은 3 개의 열 (q1, q2, q3)과 2 개의 행이있는 기존 SQL 테이블입니다.
> q1 q2 q3
> --------
> 1 2 3
> 4 5 6
해당 테이블을 변환하고 2 개의 새 열 (cg, sg) 및 테이블 열 이름을 값과 결합한 6 개의 행을 포함하는 결과 집합을 반환하는 SQL 쿼리가 필요합니다.
> cg sg
> ======
> q1 1
> q1 4
> q2 2
> q2 5
> q3 3
> q3 6
아마도 일종의 "PIVOT"작업이 필요할 수 있지만 여러 번 시도해도 작동하지 않습니다.
조언이나 해결책이 있습니까? 감사.
추신 : 저장 프로 시저를 사용할 수없고 쿼리 하나만 사용할 수 있습니다.
다음은 테이블을 한 번만 스캔하는 또 다른 방법입니다.
SELECT
x.*
FROM tbl t
CROSS APPLY( VALUES
('q1', q1),
('q2', q2),
('q3', q3)
) x(cg, sg)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다