쿼리 결과 행 그룹화(Visual Database Tools)

적용 대상:SQL Server

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

예를 들어 titles 표에 있는 책의 평균 가격을 볼 수 있지만 게시자별로 결과를 세면 됩니다. 이렇게 하려면 게시자별로 쿼리를 그룹화합니다(예: pub_id). 다음과 같은 쿼리 결과가 만들어집니다.

Query results: average price grouped by publisher

데이터를 그룹화할 때 다음과 같이 요약 또는 그룹화된 데이터만 표시할 수 있습니다.

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

  • SUM( ) 및 AVG( )와 같은 집계 함수에서 생성되는 값입니다. 위의 예제에서 두 번째 열은price 열과 함께 AVG( ) 함수를 사용하여 생성됩니다.

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

둘 이상의 열을 그룹화하면 쿼리의 각 그룹은 모든 그룹화 열에 대한 집계 값을 표시합니다.

예를 들어 다음 쿼리는 게시자(pub_id) 및 책 형식(type)을 사용하여 titles 테이블 그룹에 대해 쿼리합니다. 쿼리 결과는 게시자별로 정렬되며 게시자가 생성하는 각 다른 형식의 책에 대한 요약 정보를 표시합니다.

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

결과 출력은 다음과 같을 수 있습니다.

Query results: price grouped by publisher and type

행을 그룹화하는 방법

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

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

  3. 그룹화하려는 하나 이상의 열을 조건 창에 추가합니다. 쿼리 출력에 열을 표시하려면 출력 열이 선택되어 있는지 확인합니다.

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

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

  5. 집계할 열의 그룹별 약식 표 셀에서 적절한 집계 함수를 선택합니다.

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

    Adding a column alias to the query result set

    SQL 창의 해당 문은 다음과 같을 수 있습니다.

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

참고 항목

쿼리 결과 정렬 및 그룹화