집 >데이터 베이스 >MySQL 튜토리얼 >T-SQL에서 다중 검토와 관련된 사용자 이름을 그룹화하고 연결하는 방법은 무엇입니까?
T-SQL: 여러 리뷰의 사용자 이름 결합
여러 관련 테이블의 데이터를 쉼표로 구분된 단일 문자열로 집계하는 것은 데이터베이스 관리에서 자주 요구되는 사항입니다. 이 예에서는 특히 리뷰, 리뷰어 및 사용자 간의 다대다 관계에 대해 이를 달성하기 위한 T-SQL 접근 방식을 보여줍니다.
하위 쿼리를 사용한 간결한 솔루션은 효과적인 방법을 제공합니다.
<code class="language-sql">SELECT r.ReviewID, r.ReviewDate, ( SELECT u.FName + ',' FROM @Users u INNER JOIN @Reviewers rs ON u.UserID = rs.UserID WHERE rs.ReviewID = r.ReviewID FOR XML PATH('') ) AS UserNames FROM @Reviews r</code>
다음은 분석입니다.
@Reviews
: 이 테이블에는 리뷰 세부 정보(ReviewID, ReviewDate)가 저장됩니다.@Reviewers
: 이 테이블은 리뷰와 리뷰어(ReviewerID, ReviewID, UserID)를 연결합니다.@Users
: 이 테이블에는 사용자 정보(UserID, FName, LName)가 포함됩니다.SELECT
문은 @Users
과 @Reviewers
를 결합하여 각 리뷰와 관련된 이름(FName
)을 검색합니다.FOR XML PATH('')
은 FName
값을 쉼표로 구분된 단일 문자열로 효율적으로 연결합니다.이 쿼리는 결과를 ReviewID
별로 그룹화하여 ReviewID
, ReviewDate
및 관련 사용자 이름의 쉼표로 구분된 목록을 포함하여 각 리뷰가 단일 행으로 표시되는 통합 출력을 생성합니다. 이는 각 리뷰와 관련된 여러 사용자 이름을 단일 기록으로 결합해야 하는 필요성을 직접적으로 해결합니다.
위 내용은 T-SQL에서 다중 검토와 관련된 사용자 이름을 그룹화하고 연결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!