DAY12_MYSQL Group + 집계 함수
2023. 3. 20. 15:54ㆍSQL
그룹 형성하기 문법
select 그룹을 맺을 필드 or 집계함수 from 테이블명 group by 그룹을 맺을 필드 having 조건절;
예시 gender from member group by gender;
예시1) 성별로 포인트 합계 구하기
select gender,sum(point) from member group by gender;
그룹 형성하기(조건을 추가해서)
select 그룹을 맺을 필드 or 집계함수 from 테이블 group by 그룹을 맺을 필드 having 조건절;
문제_ point가 0이 아닌 회원들 중에서, 남,여로 그룹을 나눠서 포인트의 평균을 구하고,
조건:평균 포인트가 100이상인 성별을 검색하여 포인트로 내림차순 정렬
select gender, avg(point) as avg from member where point > 0 group by gender having avg > 100 order by avg desc;
집계함수
✔count : 행의 개수를 세는 함수
cf)전체 인원을 알고 싶으면 : primary key가 적용된 필드를 선택
select count(userid) as 전체인원 from member;
주소를 입력한 인원 : null이 있기 때문에 그것을 제외하고 갯수를 셈
select count(zipcode) as 우편번호 from member;
✔sum : 행의 값을 더함
select sum(point) as 포인트합계 from member;
select userid,sum(point) as 포인트합계 from member;
만약 userid에 무엇을 넣고 싶다면 그룹을 넣어야함.
✔avg: 행값의 평균을 구함
select avg(point) as 평균 from member;
✔min: 행의 최소값
select min(point) as 최소값 from member;
✔max: 행의 최대값
select max(point) as 최대값 from member;
728x90
'SQL' 카테고리의 다른 글
Day12_MYSQL_데이터 정규화 + 서브쿼리 (0) | 2023.03.20 |
---|---|
DAY12_MYSQL 정렬 + limit (1) | 2023.03.20 |
Day12 MySQL_ foreign key + join + union (0) | 2023.03.20 |
SQL( AUTO_INCREMET) (0) | 2023.03.19 |
Day11 연산자와 데이터 검색, 정렬 (0) | 2023.03.17 |