: 컬λΌμμ κ°μ₯ ν° nκ°μ κ° λλ κ°μ₯ μμ nκ°μ κ°μ μ°Ύλ κ².
(μλ₯Ό λ€μ΄ βκ°μ₯ μ κ² νλ¦° μ ν 10κ°μ§λ?β, λλ βνμ¬μ μ΅μμ μλμ 3λͺ
μ?β λ±...)
: EMP ν μ΄λΈμμ μ΅μμ μλμ 3λͺ μ μ΄λ¦κ³Ό κΈμ¬λ₯Ό νμνμμ€.
SQL> select ROWNUM as RANK, last_name, salary
from (select last_name, salary
from employees
order by salary DESC)
where ROWNUM <= 3;
: EMP ν μ΄λΈμμ μ΅νμ μλμ 3λͺ μ μ΄λ¦κ³Ό κΈμ¬λ₯Ό νμνμμ€.
SQL> select ROWNUM as RANK, last_name, salary
from (select last_name, salary
from employees
order by salary)
where ROWNUM <= 3
1.
SQL> select ROWNUM as RANK, last_name, salary
from (select last_name, salary
from employees
order by salary)
where ROWNUM <= 3
(==)
2.
SQL> select ROWNUM as RANK, last_name, salary
from (select *
from employees
order by salary)
where ROWNUM <= 3
// (11κ°μ 컬λΌμ μμμ μ₯νλ€κ° 3κ°λ₯Ό λ€μ κ±Έλ¬λ)
select ROWNUM as RANK, employee_id, last_name, hire_date
from (select employee_id, last_name, hire_date
from employees
order by hire_date desc)
where ROWNUM <= 10;
select ROWNUM as RANK, employee_id, last_name, hire_date
from (select employee_id, last_name, hire_date
from employees
order by hire_date)
where ROWNUM <= 10;
π Tip !!
β΄ emp->1~20μ
β΅ 10~20μ
βΆ dept μ‘°μΈ
β΄ emp->1~20μ
select ROWNUM as RANK, employee_id, last_name, salary, department_id
from(select employee_id, last_name, salary,department_id
from employees
order by salary desc)
where ROWNUM <= 20;
β΅ 10~20μ
select RANK, employee_id, last_name, salary, department_id
from (select ROWNUM as RANK, employee_id, last_name, salary, department_id
from(select employee_id, last_name, salary,department_id
from employees
order by salary desc)
where ROWNUM <= 20)
where RANK between 10 and 20;
βΆ dept μ‘°μΈ
select a.RANK, a.employee_id, a.last_name, a.salary, a.department_id, b.department_name
from (select ROWNUM as RANK, employee_id, last_name, salary, department_id
from(select employee_id, last_name, salary,department_id
from employees
order by salary desc)
where ROWNUM <= 20) a join departments b
on (a.department_id = b.department_id)
where a.RANK between 10 and 20
order by a.rank ;