logo

MySQL GROUP BY 절

MYSQL GROUP BY 절은 여러 레코드에서 데이터를 수집하고 결과를 하나 이상의 열로 그룹화하는 데 사용됩니다. 일반적으로 SELECT 문에서 사용됩니다.

그룹화된 열에 COUNT, SUM, MIN, MAX, AVG 등과 같은 일부 집계 함수를 사용할 수도 있습니다.

통사론:

 SELECT expression1, expression2, ... expression_n, aggregate_function (expression) FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n; 

매개변수

표현식1, 표현식2, ... 표현식_n: 집계 함수 내에서 캡슐화되지 않고 GROUP BY 절에 포함되어야 하는 표현식을 지정합니다.

집계_함수: SUM, COUNT, MIN, MAX, AVG 등과 같은 함수를 지정합니다. 테이블: 레코드를 검색하려는 테이블을 지정합니다. FROM 절에는 테이블이 하나 이상 나열되어 있어야 합니다.

WHERE 조건: 선택 사항입니다. 레코드를 선택하기 위해 충족해야 하는 조건을 지정합니다.

(i) COUNT 함수가 포함된 MySQL GROUP BY 절

다음과 같은 레코드가 있는 'officers' 테이블이라는 테이블을 생각해 보세요.

조항 1에 따른 MySQL 그룹

이제 열 주소에 반복되는 도시의 개수를 세어보겠습니다.

다음 쿼리를 실행합니다.

 SELECT address, COUNT(*) FROM officers GROUP BY address; 

산출:

조항 2에 따른 MySQL 그룹

(ii) SUM 함수가 포함된 MySQL GROUP BY 절

다음 데이터가 있는 'employees' 테이블을 살펴보겠습니다.

조항 3에 따른 MySQL 그룹

이제 다음 쿼리는 SUM 함수를 사용하여 예제를 GROUP BY하고 각 직원의 emp_name 및 총 근무 시간을 반환합니다.

다음 쿼리를 실행합니다.

 SELECT emp_name, SUM(working_hours) AS 'Total working hours' FROM employees GROUP BY emp_name; 

산출:

조항 4에 따른 MySQL 그룹

(iii) MIN 함수가 포함된 MySQL GROUP BY 절

다음 예에서는 'employees' 테이블에서 직원의 최소 근무 시간을 지정합니다.

다음 쿼리를 실행합니다.

 SELECT emp_name, MIN(working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name; 

산출:

조항 5에 따른 MySQL 그룹

(iv) MAX 함수가 포함된 MySQL GROUP BY 절

다음 예에서는 'employees' 테이블에서 직원의 최대 근무 시간을 지정합니다.

다음 쿼리를 실행합니다.

 SELECT emp_name, MAX (working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name; 

산출:

조항 6에 따른 MySQL 그룹

(v) AVG 기능이 포함된 MySQL GROUP BY 절

다음 예에서는 'employees' 테이블에서 직원의 평균 근무 시간을 지정합니다.

안드로이드에서 차단된 번호를 확인하는 방법

다음 쿼리를 실행합니다.

 SELECT emp_name, AVG(working_hours) AS 'Average working hour' FROM employees GROUP BY emp_name; 

산출:

조항 7에 따른 MySQL 그룹