안녕하세요?
select avg(total) from sungjuk;
이렇게해서 전체 점수 평균을 구했는데요
이번에는 상위 학생 10%의 평균을 구하고 싶네요
어케 해야할까요?
부탁드립니다.
특별한 방법이 없을 것같습니다.
1. sungjuk 테이블의 10% 가 몇개의 row를 가지는지를 구하고,
select round(count(*) * 0.1) from sungjuk
2. 다시
select avg(a.total) from (select total as temptable from sungjuk order by total desc limit 숫자) a
숫자는 1. 쿼리에서 구한 그 숫자
제 머리로는 이것 빼고는 하나의 쿼리로는 불가능해보이네요. :)
limit 다음에는 query 를 보낼 수 없게 되어있군요. -.-
감사합니다.....
저는 그냥 프로그램에서 처리했는데 님이 갈켜주신것이 훨씬깔끔하네요
다시한번 감사드립니다.