rank and dense_rank with group by : DENSE_RANK « Analytical Functions « Oracle PL / SQL






rank and dense_rank with group by

  

SQL> CREATE TABLE sales(
  2    product_id               NUMBER(6),
  3    cid               NUMBER,
  4    time_id               DATE,
  5    sold         NUMBER(3),
  6    amount                NUMBER(10,2),
  7    cost                  NUMBER(10,2)
  8  );

Table created.

SQL>
SQL> select product_id,
  2         sum(sold),
  3         rank () over (order by sum(sold) desc) as rank,
  4         dense_rank () over (order by sum(sold) desc) as dense_rank
  5  from sales
  6  where to_char(time_id, 'yyyy-mm') = '2001-06'
  7  group by product_id;

no rows selected

SQL>
SQL> drop table sales;

Table dropped.

   
    
  








Related examples in the same category

1.DENSE_RANK()rank items, leaves no gaps when there is a tie
2.Deal with Null in Rank
3.Deal with Null in dense_rank
4.DENSE_RANK() with NULLS FIRST
5.DENSE_RANK() with NULLS LAST
6.DENSE_RANK function
7.Use DENSE_RANK() to get the top rank
8.Compare rank() and dense_rank()
9.dense_rank() over (order by comm desc nulls last)
10.Use rank and dense_rank in subquery
11.decode dense_rank
12.dense_rank() over ( partition by deptno order by sal desc )