행 그룹 축소(Visual Database Tools)Collapse Groups of Rows (Visual Database Tools)

이 항목 적용 대상: 예SQL Server예Azure SQL 데이터베이스예Azure SQL 데이터 웨어하우스 예 병렬 데이터 웨어하우스THIS TOPIC APPLIES TO: yesSQL ServeryesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse 쿼리 결과의 각 결과 행이 원본 데이터의 전체 행 그룹에 대응하는 쿼리 결과를 만들 수 있습니다. You can create a query result in which each result row corresponds to an entire group of rows from the original data. 행을 축소하는 경우 다음 사항에 유의해야 합니다.When collapsing rows, there are several things to keep in mind:

  • 중복 행을 제거할 수 있습니다. 일부 쿼리의 경우 동일한 행이 여러 개 나타나는 결과 집합을 만들 수 있습니다.You can eliminate duplicate rows Some queries can create result sets in which multiple identical rows appear. 예를 들어, 각 행에 저자가 있는 도시의 이름과 주 이름이 있는 결과 집합을 만들 수 있습니다. 그러나 한 도시에 저자가 여러 명인 경우 똑같은 행이 여러 개 생깁니다.For example, you can create a result set in which each row contains the city and state name of a city containing an author – but if a city contains several authors, there will be several identical rows. 결과 SQL은 다음과 같습니다.The resulting SQL might look like this:

    SELECT city, state  
    FROM authors  
    

    앞의 쿼리에서 생성한 결과 집합은 그다지 유용하지 않습니다.The result set generated by the preceding query is not very useful. 한 도시에 네 명의 저자가 있을 경우 결과 집합에는 똑같은 행이 네 개 포함됩니다.If a city contains four authors, the result set will include four identical rows. 결과 집합에 도시와 주 이외의 다른 열이 없으므로 동일한 행을 구분할 수 있는 방법이 없습니다.Since the result set does not include any columns other than city and state, there is no way to distinguish the identical rows from each other. 행을 서로 다르게 만들 수 있는 추가 열을 포함시키는 것이 중복 행을 방지하는 한 가지 방법입니다.One way to avoid such duplicate rows is to include additional columns that can make the rows different. 예를 들어, 저자 이름을 포함하는 경우 같은 이름을 갖는 두 저자가 한 도시에 살고 있는 경우를 제외하고는 각 행은 서로 다르게 됩니다.For example, if you include author name, each row will be different (provided no two like-named authors live within any one city). 결과 SQL은 다음과 같습니다.The resulting SQL might look like this:

    SELECT city, state, fname, minit, lname  
    FROM authors  
    

    앞의 쿼리에서는 발생할 수 있는 문제점을 제거할 수 있지만 실제로 문제를 해결하지는 못합니다.Of course, the preceding query eliminates the symptom, but does not really solve the problem. 즉, 결과 집합에 중복 행은 없지만 이것은 더 이상 도시에 관한 결과 집합이 아니기 때문입니다.That is, the result set has no duplicates, but it is no longer a result set about cities. 따라서 원래 결과 집합에서 중복 행을 제거하고 각 행에 도시가 나타나도록 하려면 서로 다른 행만 반환하여 쿼리를 만들면 됩니다.To eliminate duplicates in the original result set, and still have each row describe a city, you can create a query returning only distinct rows. 결과 SQL은 다음과 같습니다.The resulting SQL might look like this:

    SELECT DISTINCT city, state  
    FROM authors  
    

    중복 행을 제거하는 방법에 대한 자세한 내용은 중복 행 제외(Visual Database Tools)를 참조하세요.For details about eliminating duplicates, see Exclude Duplicate Rows (Visual Database Tools).

  • 행 그룹에서 계산할 수 있습니다. 행 그룹의 정보를 요약할 수 있습니다.You can calculate on groups of rows That is, you can summarize information in groups of rows. 예를 들어, 각 행에 저자 소재 도시의 이름과 주 이름 및 해당 도시에 있는 저자 수를 포함하는 결과 집합을 만들 수 있습니다.For example, you can create a result set in which each row contains the city and state name of a city containing an author, plus a count of the number of authors contained in that city. 결과 SQL은 다음과 같습니다.The resulting SQL might look like this:

    SELECT city, state, COUNT(*)  
    FROM authors  
    GROUP BY city, state  
    

    행 그룹 계산에 대한 자세한 내용은 쿼리 결과 요약(Visual Database Tools)쿼리 결과 정렬 및 그룹화(Visual Database Tools)를 참조하세요.For details about calculating on groups of rows, see Summarize Query Results (Visual Database Tools) and Sort and Group Query Results (Visual Database Tools).

  • 선택 기준을 사용하여 행 그룹을 포함할 수 있습니다. 예를 들어, 각 행에 저자가 여러 명 있는 도시의 이름과 주 이름 및 해당 도시에 있는 저자 수를 포함하는 결과 집합을 만들 수 있습니다.You can use selection criteria to include groups of rows For example, you can create a result set in which each row contains the city and state name of a city containing several authors, plus a count of the number of authors contained in that city. 결과 SQL은 다음과 같습니다.The resulting SQL might look like this:

    SELECT city, state, COUNT(*)  
    FROM authors  
    GROUP BY city, state  
    HAVING COUNT(*) > 1  
    

    행 그룹에 선택 조건을 적용하는 방법에 대한 자세한 내용은 그룹 조건 지정(Visual Database Tools)동일한 쿼리에서 HAVING 및 WHERE 절 사용(Visual Database Tools)을 참조하세요.For details about applying selection criteria on groups of rows, see Specify Conditions for Groups (Visual Database Tools) and Use HAVING and WHERE Clauses in the Same Query (Visual Database Tools).

관련 항목:See Also

검색 조건 지정(Visual Database Tools)Specify Search Criteria (Visual Database Tools)
쿼리 및 뷰 디자인 방법 도움말 항목(Visual Database Tools)Design Queries and Views How-to Topics (Visual Database Tools)