> 데이터 베이스 > MySQL 튜토리얼 > 'FOR XML PATH'와 'STUFF'를 결합하여 SQL Server에서 데이터를 연결하는 방법은 무엇입니까?

'FOR XML PATH'와 'STUFF'를 결합하여 SQL Server에서 데이터를 연결하는 방법은 무엇입니까?

Linda Hamilton
풀어 주다: 2025-01-22 23:13:18
원래의
686명이 탐색했습니다.

How Do `FOR XML PATH` and `STUFF` Combine to Concatenate Data in SQL Server?

SQL Server에서 FOR XML PATH와 STUFF 함수의 시너지 효과

SQL Server에서 FOR XML PATHSTUFF 함수의 조합은 데이터를 구성하고 결합하는 데 중요한 역할을 합니다. 원하는 목표를 달성하기 위해 메커니즘을 분석해 보겠습니다.

1. 'FOR XML PATH'를 사용하여 XML 요소 문자열을 추출합니다

FOR XML PATH 쿼리 결과를 XML 요소로 변환합니다. 요소 이름을 생략하면 다음 예와 같이 쉼표로 구분된 값 목록이 출력됩니다.

<code class="language-sql">SELECT ',' + name FROM temp1 FOR XML PATH('')</code>
로그인 후 복사

2. STUFF를 사용하여 선행 쉼표를 제거하세요

STUFF은 지정된 문자를 바꾸어 문자열을 수정하는 데 사용됩니다. 이 예에서는 XML 문자열에서 선행 쉼표를 제거합니다.

<code class="language-sql">STUFF((SELECT ',' + NAME FROM temp1 FOR XML PATH('')), 1, 1, '')</code>
로그인 후 복사

3. 조인을 수행하여 목록 생성

마지막으로 수정된 목록은 'id' 열을 통해 원본 테이블과 조인됩니다.

<code class="language-sql">SELECT ID, abc = STUFF((
             SELECT ',' + name 
              FROM temp1 t1
              WHERE t1.id = t2.id
              FOR XML PATH (''))
             , 1, 1, '') from temp1 t2
group by id;</code>
로그인 후 복사

이 조합은 각 'Id'에 대한 'Name' 열 값을 효과적으로 연결하여 예상되는 출력을 얻습니다.

<code>Id |    Name
-------------------
1   | aaa,bbb,ccc,ddd,eee</code>
로그인 후 복사

위 내용은 'FOR XML PATH'와 'STUFF'를 결합하여 SQL Server에서 데이터를 연결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿