WINDOW FUNCTION RANK

description

RANK() 函数用来表示排名,与 DENSE_RANK() 不同的是,RANK() 会出现空缺数字。比如,如果出现了两个并列的1, RANK() 的第三个数就是3,而不是2。

  1. RANK() OVER(partition_by_clause order_by_clause)

example

根据 x 进行排名

  1. select x, y, rank() over(partition by x order by y) as rank from int_t;
  2. | x | y | rank |
  3. |----|------|----------|
  4. | 1 | 1 | 1 |
  5. | 1 | 2 | 2 |
  6. | 1 | 2 | 2 |
  7. | 2 | 1 | 1 |
  8. | 2 | 2 | 2 |
  9. | 2 | 3 | 3 |
  10. | 3 | 1 | 1 |
  11. | 3 | 1 | 1 |
  12. | 3 | 2 | 3 |

keywords

  1. WINDOW,FUNCTION,RANK