이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문
Visual Studio 2017을 사용하는 것이 좋습니다.

방법: 쿼리 결과 행 그룹화

부분합을 계산하거나 테이블의 하위 집합에 대한 다른 요약 정보를 표시하려면 집계 쿼리를 사용하여 그룹을 만듭니다. 각 그룹은 테이블에서 값이 동일한 모든 행의 데이터를 요약하는 데 사용됩니다.

예를 들어, titles 테이블에서 출판사별로 구분된 도서 평균 가격 결과를 확인해야 할 수도 있습니다. 이 경우 출판사별로 쿼리를 그룹화할 수 있습니다(예: pub_id). 다음과 같은 쿼리 결과가 만들어집니다.

QueryGroupingRowsResultsPane 스크린 샷

데이터를 그룹화하면 다음과 같이 요약 데이터나 그룹화된 데이터만 표시할 수도 있습니다.

  • GROUP BY 절에 나타나는 그룹화된 열의 값. 위 예제에서 pub_id는 그룹화된 열입니다.

  • SUM( ) 및 AVG( ) 같은 집계 함수를 통해 얻은 값. 위 예제에서 두 번째 열은 AVG( ) 함수를 price 열에 적용하여 얻은 결과입니다.

개별 행의 값은 표시할 수 없습니다. 예를 들어, 출판사만을 기준으로 그룹화한 경우 쿼리의 개별 책 제목은 표시할 수 없습니다. 따라서, 쿼리 출력에 열을 추가하면 쿼리 및 뷰 디자이너SQL 창에서 이러한 열이 문의 GROUP BY 절에 자동으로 추가됩니다. 열에 대한 집계 함수를 지정하면 해당 열을 대신 집계할 수 있습니다.

두 개 이상의 열을 기준으로 그룹화하는 경우 쿼리의 각 그룹에는 전체 그룹 열의 집계 값이 표시됩니다.

예를 들어, titles 테이블에 대한 아래 쿼리에서는 출판사(pub_id)와 도서 종류(type)를 기준으로 결과를 그룹화합니다. 쿼리 결과는 출판사 순으로 정렬되고 각 출판사에서 발생하는 서로 다른 도서 종류 각각에 대한 요약 정보가 결과에 표시됩니다.

SELECT pub_id, type, SUM(price) Total_price
FROM titles
GROUP BY pub_id, type

출력 결과는 다음과 같습니다.

QueryGroupingRowsSampleOutput 스크린 샷
참고참고

일부 Visual Studio 사용자 인터페이스 요소의 경우 다음 지침에 설명된 것과 다른 이름 또는 위치가 시스템에 표시될 수 있습니다. 이러한 요소는 사용하는 Visual Studio 버전 및 설정에 따라 결정됩니다. 자세한 내용은 Visual Studio 설정을 참조하십시오.

행을 그룹화하려면

  1. 요약하려는 테이블을 다이어그램 창에 추가하여 쿼리를 시작합니다.

  2. 다이어그램 창의 배경을 마우스 오른쪽 단추로 클릭한 다음 바로 가기 메뉴에서 그룹화 방법 추가를 선택합니다. 쿼리 및 뷰 디자이너에서 그룹화 방법 열이 조건 창의 표에 추가됩니다.

  3. 그룹화하려는 하나 이상의 열을 조건 창에 추가합니다. 쿼리 출력에 열을 표시하려면 해당 출력에 대해 출력 열을 선택해야 합니다.

    쿼리 및 뷰 디자이너의 SQL 창에서 GROUP BY 절이 문에 추가됩니다. 예를 들어, SQL 문은 다음과 같은 형식입니다.

    SELECT pub_id
    FROM titles
    GROUP BY pub_id
    
  4. 집계하려는 하나 이상의 열을 조건 창에 추가합니다. 열을 출력하도록 선택되어 있어야 합니다.

  5. 집계하려는 열에 대한 그룹화 방법 표 셀에서 적절한 집계 함수를 선택합니다.

    쿼리 및 뷰 디자이너에서 요약 대상 열에 대한 열 별칭이 자동으로 할당됩니다. 자동으로 생성된 이 별칭을 좀 더 의미 있는 별칭으로 바꿀 수 있습니다. 자세한 내용은 방법: 열 별칭 만들기를 참조하십시오.

    QueryGroupingRows 스크린 샷

    해당 문이 SQL 창에 다음과 같은 형식으로 표시됩니다.

    SELECT   pub_id, SUM(price) AS Totalprice
    FROM     titles
    GROUP BY pub_id
    
표시: