집 >데이터 베이스 >MySQL 튜토리얼 >STUFF 및 FOR XML PATH는 SQL Server에서 데이터를 어떻게 연결합니까?
SQL Server에서 STUFF와 FOR XML PATH의 기발한 조합
SQL Server에서는 STUFF와 FOR XML PATH 함수의 조합을 통해 데이터를 효율적으로 연결하고 처리할 수 있습니다. 이 두 기능이 어떻게 함께 작동하여 원하는 출력을 달성하는지 살펴보겠습니다.
FOR XML PATH의 역할
FOR XML PATH 쿼리 결과를 XML 요소의 문자열로 변환합니다. FOR XML PATH에 빈 문자열을 인수('')로 추가하면 쉼표로 구분된 값 목록이 생성됩니다. 예:
<code class="language-sql">SELECT ',' + name FROM temp1 FOR XML PATH ('')</code>
결과는 다음과 같습니다.
<code>,aaa,bbb,ccc,ddd,eee</code>
STUFF의 역할
STUFF 함수는 문자열에 문자를 삽입하거나 바꾸는 데 사용됩니다. 시작 위치 및 길이 매개변수를 1로 지정하면 문자열의 첫 번째 문자를 효과적으로 제거할 수 있습니다.
<code class="language-sql">STUFF( (SELECT ',' + NAME FROM temp1 FOR XML PATH('') ), 1, 1, '' )</code>
이렇게 하면 이름 목록 시작 부분의 쉼표가 제거됩니다.
<code>aaa,bbb,ccc,ddd,eee</code>
ID 기반 연결
마지막으로 Group By를 사용하여 수정된 목록을 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>
이 코드는 STUFF와 FOR XML PATH가 SQL Server에서 함께 작동하여 원하는 출력을 생성하는 방법을 간결하게 설명합니다.
위 내용은 STUFF 및 FOR XML PATH는 SQL Server에서 데이터를 어떻게 연결합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!