필드 1의 고유 값과 필드 2의 해당 값 (순서대로)을 표시하는 두 개의 열이있는 테이블을 하나로 가져 오는 MSSQL 쿼리에 도움이 필요하십니까?

처벌

현재 상태 및 원하는 상태 그림

필드 1의 고유 값과 필드 2의 해당 값 (순서대로)을 표시하는 두 개의 열이있는 테이블을 하나로 가져 오는 MSSQL 쿼리에 도움이 필요하십니까? 위 링크에 첨부 된 사진 참조

제임스 Z

귀하의 요청은 매우 이상하게 들리지만 원하는 경우 한 가지 방법은 다음과 같이 rollup + grouping_id를 사용하는 것입니다.

select case when grouping_id(field2) = 1 then field1 else field2 end
from yourtable
group by field1, rollup(field2)
order by field1, grouping_id(field2) desc, field2

일반적으로 소계에 사용하지만 케이스와 함께 사용하면 데이터에 행을 추가 할 수 있습니다.

다음을 반환합니다.

x
a
b
c
d
y
e
f
g
z
h
i

편집 : 테이블 + 열 이름을 나열하는 방법 :

select case when grouping_id(c.name) = 1 then t.name else c.name end
from sys.tables t join sys.columns c on t.object_id = c.object_id
group by t.name, rollup(c.name)
order by t.name,c.name

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관