-- 오늘의 마지막 문제1. 우리반에서 서울에 살면서 통신사가 sk 인 학생들의 이름과 나이와 나이의 순위를 출력하시오
select
telecom,
ename,
age,
rank() over(order by age desc)
from dba22
where telecom = 'sk' and substr(address, 1, 2) = '서울';
-- 오늘의 마지막 문제2. 우리반 테이블에서 이메일의 도메인을 출력하고 이메일의 도메일별 건수를 출력하는데 그 건수가 높은것부터 출력하시오
select
substr(substr(email, instr(email, '@') + 1), 1, instr(substr(email, instr(email, '@') + 1), '.') - 1) as "도메인",
count(1)
from emp21
group by substr(substr(email, instr(email, '@') + 1), 1, instr(substr(email, instr(email, '@') + 1), '.') - 1)
order by count(1) desc;
-- 오늘의 마지막 문제3. 직업별 평균월급중에 가장 큰 값은 무엇인지 출력하시오
select job, avg(sal)
from emp
group by job
order by avg(sal) desc
fetch first 1 rows only;