[sql] 데이터 그룹화 함수 (GROUP BY)

데이터베이스에서 GROUP BY 절은 데이터를 그룹으로 묶는 데 사용됩니다. 이는 특정 열에 대해 동일한 값을 가진 행을 그룹화할 수 있게 해줍니다. 그룹화된 데이터에 대해 집계 함수를 사용하여 결과를 계산할 수 있습니다.

GROUP BY의 구문

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE condition
GROUP BY column_name;

위의 구문에서, column_name은 그룹화할 열을 나타내며, aggregate_function은 해당 열의 데이터에 적용할 집계 함수를 나타냅니다.

GROUP BY의 예제

예를 들어, 주문 테이블이 있다고 가정해봅시다. 각 주문은 고객 ID, 주문 일자 및 주문 금액으로 구성됩니다.

주문 ID 고객 ID 주문 일자 주문 금액
1 101 2022-01-01 150
2 102 2022-01-02 200
3 101 2022-01-03 100
4 103 2022-01-04 120
5 102 2022-01-05 250

다음의 SQL 쿼리는 각 고객별 총 주문 금액을 조회하는 것입니다.

SELECT 고객 ID, SUM(주문 금액) AS  주문 금액
FROM 주문테이블
GROUP BY 고객 ID;

위의 쿼리를 실행하면 다음과 같은 결과가 나옵니다.

고객 ID 총 주문 금액
101 250
102 450
103 120

위의 결과에서 볼 수 있듯이, GROUP BY를 사용하여 각 고객의 주문 금액을 그룹화하고 총 주문 금액을 계산할 수 있습니다.

참고문헌:

  1. https://www.w3schools.com/sql/
  2. https://www.postgresql.org/docs/current/sql-select.html