MySQL 그룹별로 표시하기.
그룹별로 표시하기.
Table_01에 number 컬럼에는 A1인 데이터가 여러 개 있습니다. 이와 같이 같은 값의 데이터를 그룹으로 만들 수 있습니다. 그룹으로 설정된 데이터는 합계와 평균을 비롯한 각종 데이터 처리를 그룹 단위로 할 수 있습니다.
그룹화할 때는 group by를 사용합니다.
select 컬럼명 from 테이블명 group by 그룹화할 컬럼명;
컬럼 number를 그룹화 하기 전과 후를 비교해 보겠습니다.
select * from table_01;
select * from table_01 group by number;
위와 같이 number에 대해 그룹화를 했을 때 number 데이터는 1종류씩 표시됨을 확인할 수 있습니다. 하지만 그룹화했을 때 그 처리 대상은 같은 그룹에 속해 있는 모든 레코드입니다.
무슨 의미인지는 위쪽 결과를 보시면 A1에 강백호, 강호동, 신동엽이 있습니다만 그룹화 했을 때 대표로 강백호 하나만 나타냈을 뿐 실제로는 A1에 속해 있는 모든 값이 대상입니다.
그러면 그룹별 몇 개가 있는지 count( ) 함수를 사용해 보겠습니다.
select number, count(*) from table_01 group by number;
그룹별 합계와 평균 표시하기.
그룹화로 합계를 계산하는 함수인 sum( )과 평균을 계산하는 함수 avg( )를 사용해 보겠습니다.
나이 합계 구하기.
select number, sum(age) as 나이합계 from table_01 group by number;
나이 평균 구하기.
select number, avg(age) as 나이평균 from table_01 group by number;
'MySQL' 카테고리의 다른 글
MySQL 데이터 수정하기, 컬럼 추가 하기, 컬럼 삭제하기. (0) | 2017.11.29 |
---|---|
MySQL 그룹화에 조건 설정하기. (0) | 2017.11.27 |
MySQL 정렬하기(오름차순, 내림차순, 표시 범위 지정). (0) | 2017.11.26 |
MySQL CASE WHEN 사용하기. (0) | 2017.11.26 |
MySQL 조건에 AND 와 OR 사용하기. (0) | 2017.11.24 |