User Tools

Site Tools


kurs:rank
SELECT *
FROM (
   SELECT employee_id, last_name, salary,
   RANK() OVER (ORDER BY salary DESC) EMPRANK
   FROM employees)
where    emprank > 10 and emprank < 13
-- WHERE emprank = 2;
with cte_emp_dep as (
SELECT
    emp.first_name,
    emp.last_name,
    emp.salary,
    dep.department_name
FROM
    employees emp left join departments dep 
on emp.department_id = dep.department_id    
where salary < 9000
),
cte_sal_bin as (
select cte_emp_dep.*,
trunc(salary, -3) sal_bin
from cte_emp_dep
),
cte_rank as (
select cte_sal_bin.*,
dense_rank() over (order by sal_bin) rank_sal_bin
from cte_sal_bin
)
select * from cte_rank 
where rank_sal_bin < 10
order by salary 
kurs/rank.txt · Last modified: 2024/03/05 15:29 by admin