> 데이터 베이스 > MySQL 튜토리얼 > SQL Server에서 STRING_AGG를 사용하여 고유 값을 연결하는 방법은 무엇입니까?

SQL Server에서 STRING_AGG를 사용하여 고유 값을 연결하는 방법은 무엇입니까?

Patricia Arquette
풀어 주다: 2025-01-24 07:07:08
원래의
873명이 탐색했습니다.

How to Concatenate Distinct Values Using STRING_AGG in SQL Server?

SQL Server에서 고유 값 연결을 위해 STRING_AGG 사용: 실용적인 접근 방식

SQL Server의 STRING_AGG 함수는 여러 값을 단일 문자열로 연결하는 작업을 단순화합니다. 그러나 STRING_AGG를 사용하여 고유한 값을 직접 연결하려면 해결 방법이 필요합니다. 이 문서에서는 대규모 데이터 세트에서도 STRING_AGG를 사용하여 고유 값을 계산하고 연결하는 2단계 프로세스를 설명합니다.

해결책:

이 방법은 2단계 GROUP BY 접근 방식을 사용합니다.

  1. 중복 제거: 첫 번째 GROUP BY 작업은 중복 행을 제거하여 지정된 열의 고유한 조합만 고려되도록 합니다.

    <code class="language-sql">WITH Sitings AS (
     SELECT * FROM (VALUES
         (1, 'Florida', 'Orlando', 'bird'),
         (2, 'Florida', 'Orlando', 'dog'),
         (3, 'Arizona', 'Phoenix', 'bird'),
         (4, 'Arizona', 'Phoenix', 'dog'),
         (5, 'Arizona', 'Phoenix', 'bird'),
         (6, 'Arizona', 'Phoenix', 'bird'),
         (7, 'Arizona', 'Phoenix', 'bird'),
         (8, 'Arizona', 'Flagstaff', 'dog')
     ) F (ID, State, City, Siting)
    )</code>
    로그인 후 복사
  2. 집계 및 연결: 두 번째 GROUP BY는 고유 개수를 계산하고 STRING_AGG를 사용하여 고유 값을 연결합니다.

    <code class="language-sql">SELECT
     State,
     City,
     COUNT(1) AS [# Of Sitings],
     STRING_AGG(Siting, ',') AS Animals
    FROM (
     SELECT DISTINCT
         State,
         City,
         Siting
     FROM Sitings
    ) AS CTE_Animals
    GROUP BY
     State,
     City;</code>
    로그인 후 복사

결과 출력:

쿼리는 고유 개수와 연결된 값을 요약하는 테이블을 생성합니다.

State City # Of Sitings Animals
Arizona Flagstaff 1 dog
Arizona Phoenix 2 bird,dog
Florida Orlando 2 bird,dog

이 효율적인 기술은 광범위한 데이터 세트를 처리할 때에도 정확한 고유 값 연결 및 계산을 보장합니다. 이 접근 방식은 COUNT(DISTINCT <column>)의 기능을 효과적으로 복제하는 동시에 연결된 문자열도 제공합니다.

위 내용은 SQL Server에서 STRING_AGG를 사용하여 고유 값을 연결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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