밑의 문제들은 SQL전문가 가이드 실습용 테이블을 활용하여 문제를 풀었다
GROUP BY, HAVING BY, WHERE 절 기본 개념은 아래의 페이지를 참조하자
https://tantangerine.tistory.com/15
Oracle GROUP BY & HAVING 절 특징
GROUP BY 절 특징 GROUP BY 절을 통해 소그룹별 기준을 정한 후, SELECT절에 집계함수를 사용. 집계함수의 통계정보는 NULL 값을 가진 행을 제외하고 수행한다. GROUP BY 절에서는 ALIAS 명을 사용할 수 없다. 집..
tantangerine.tistory.com
답은 흰색으로 처리하였습니다
1. 포지션별 인원수, 최대키, 최소키, 평균키를 출력하시오 이때 소수점 2번째 자리까지 구하시오
SELECT POSITION 포지션, COUNT(*) 인원수, COUNT(HEIGHT) 키대상,
MAX(HEIGHT) 최대키, MIN(HEIGHT) 최소키, ROUND(AVG(HEIGHT),2) 평균키
FROM PLAYER GROUP BY POSITION
2. K-리그 선수들의 포지션별 평균키를 구하는데, 평균키가 180 센티미터 이상인 정보만 출력하시오
SELECT POSITION 포지션, ROUND(AVG(HEIGHT),2) 평균키
FROM PLAYER GROUP BY POSITION HAVING AVG(HEIGHT) >= 180;
3. K-리그의 선수들 중 삼성블루윙즈(K02)와 FC서울(K09)의 인원수를 출력하시오.
단, 가장 효율적인 자원 활용을 생각하시오
SELECT TEAM_ID 팀ID, COUNT(*) 인원수
FROM PLAYER
WHERE TEAM_ID IN ('K09', 'K02')
GROUP BY TEAM_ID;
SELECT TEAM_ID 팀ID, COUNT(*) 인원수
FROM PLAYER
GROUP BY TEAM_ID
HAVING TEAM_ID IN ('K09', 'K02');
4. 포지션별 평균 키만 출력하는데, 최대키가 190cm 이상인 선수를 포함하고 있는 포지션의 정보만 출력한다.
SELECT POSITION 포지션, ROUND(AVG(HEIGHT),2) 평균키
FROM PLAYER GROUP BY POSITION HAVING MAX(HEIGHT) >= 190;
'IT_Web > Oracle' 카테고리의 다른 글
Oracle 비교 연산자 & 논리연산자 & SQL 연산자 활용 문제 (0) | 2020.02.26 |
---|---|
Oracle 비교, 논리, 산술, 합성연산자 문법 (0) | 2020.02.26 |
Oracle 서브쿼리(Subquery) 의 개념 (0) | 2020.02.26 |
Oracle GROUP BY & HAVING 절 특징 (0) | 2020.02.26 |
Oracle 집계함수 문법 (0) | 2020.02.26 |