행 그룹 축소(Visual Database Tools)

적용 대상:SQL Server

쿼리 결과의 각 결과 행이 원본 데이터의 전체 행 그룹에 대응하는 쿼리 결과를 만들 수 있습니다. 행을 축소할 때 유의해야 할 몇 가지 사항이 있습니다.

  • 중복 행을 제거할 수 있습니다. 일부 쿼리는 여러 개의 동일한 행이 표시되는 결과 집합을 만들 수 있습니다. 예를 들어 각 행에 작성자가 포함된 도시의 도시 및 주 이름이 포함된 결과 집합을 만들 수 있지만, 도시에 여러 작성자가 포함된 경우 여러 개의 동일한 행이 있습니다. 결과 SQL은 다음과 같습니다.

    SELECT city, state  
    FROM authors  
    

    이전 쿼리에서 생성된 결과 집합은 그다지 유용하지 않습니다. 한 도시에 네 명의 저자가 있을 경우 결과 집합에는 똑같은 행이 네 개 포함됩니다. 결과 집합에는 도시 및 주 이외의 열이 포함되지 않으므로 동일한 행을 서로 구분할 수 있는 방법이 없습니다. 이러한 중복 행을 방지하는 한 가지 방법은 행을 다르게 만들 수 있는 추가 열을 포함하는 것입니다. 예를 들어, 저자 이름을 포함하는 경우 같은 이름을 갖는 두 저자가 한 도시에 살고 있는 경우를 제외하고는 각 행은 서로 다르게 됩니다. 결과 SQL은 다음과 같습니다.

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

    앞의 쿼리에서는 발생할 수 있는 문제점을 제거할 수 있지만 실제로 문제를 해결하지는 못합니다. 즉, 결과 집합에는 중복 항목이 없지만 더 이상 도시에 대한 결과 집합이 아닙니다. 원래 결과 집합에서 중복 항목을 제거하고 각 행이 도시를 설명하도록 하려면 고유한 행만 반환하는 쿼리를 만들 수 있습니다. 결과 SQL은 다음과 같습니다.

    SELECT DISTINCT city, state  
    FROM authors  
    

    중복 행을 제거하는 방법에 대한 자세한 내용은 중복 행 제외(Visual Database Tools)를 참조하세요.

  • 행 그룹에서 계산할 수 있습니다. 행 그룹의 정보를 요약할 수 있습니다. 예를 들어 각 행에 작성자가 포함된 도시의 도시 및 주 이름과 해당 도시에 포함된 작성자 수가 포함된 결과 집합을 만들 수 있습니다. 결과 SQL은 다음과 같습니다.

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

    행 그룹 계산에 대한 자세한 내용은 쿼리 결과 요약(Visual Database Tools)쿼리 결과 정렬 및 그룹화(Visual Database Tools)를 참조하세요.

  • 선택 조건을 사용하여 행 그룹을 포함할 수 있습니다 예를 들어 각 행에 여러 작성자가 포함된 도시의 도시 및 주 이름과 해당 도시에 포함된 작성자 수가 포함된 결과 집합을 만들 수 있습니다. 결과 SQL은 다음과 같습니다.

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

    행 그룹에 선택 조건을 적용하는 방법에 대한 자세한 내용은 그룹 조건 지정(Visual Database Tools)동일한 쿼리에서 HAVING 및 WHERE 절 사용(Visual Database Tools)을 참조하세요.

참고 항목

검색 조건 지정(Visual Database Tools)
쿼리 및 뷰 디자인 방법 도움말 항목(Visual Database Tools)