알고리즘

SQL: Oracle, 전체 평균값 이상인 값을 추출하기

짱이 되었어 2022. 10. 1. 23:49

DRINKS 테이블이 있고, 각 음료에 대한 가격(PRICE)을 추출한다고 가정하자.

이때, 조건은 가격이 전체 평균 가격의 이상인 것이다.

SELECT PRICE FROM DRINKS
WHERE PRICE >= (SELECT AVG(PRICE) FROM DRINKS);

여기서 주의할 것은 SELECT AVG(PRICE) FROM DRINKS 문을 괄호 안에 넣어야 한다는 것이다.

그렇지 않으면 SQL COMMAND 에러가 뜬다.

 

+ GROUP BY를 사용해야 하는 경우

SELECT AVG(PRICE) AS AVERAGE
FROM DRINKS
GROUP BY BRANCH_ID
HAVING AVERAGE > (SELECT AVG(PRICE) FROM DRINKS)
ORDER BY BRANCH_ID;

 

 

참고

https://ssu-jo.tistory.com/entry/GROUP-BY-%EC%98%88%EC%A0%9C-Oracle

 

GROUP BY 예제 - Oracle

1. 평균 연봉 이상 연봉을 받는 직원을 출력하면? select * from employee where salary>=(select avg(salary) from employee); 2. 연봉 총합, 평균 연봉, 최대 연봉, 최저 연봉, 최저 입사일을 출력하면? select..

ssu-jo.tistory.com