跳转至

Rank

概述

Rank 函数用于对数据内容进行松散排序,重复数据占据一个排名位。例如,数据 1, 1, 3, 4, 5 的排名结果为 1, 1, 3, 4, 5

语法示例

```text/x-sql Rank( <排名内容>, [<排名方法>] )

## 参数说明

|  **参数**  |  **说明**  |  **类型**  |
| --- | --- | --- |
|  排名内容  |  根据数据的值进行排名  |  字段、表达式、常量  |
|  排名方法  |  排序方法,"ASC" 从小到大排名,"DESC"从大到小排名。 可省略,默认为 "ASC"  |  常量  |

!!! note "字段数据类型需要为 整数(INT)、小数(DOUBLE)、高精度小数(DECIMAL)、日期(DATE)、日期时间(DATETIME)、文本(TEXT)

支持函数表达式或算数表达式,不支持窗口函数."
    字段数据类型需要为 整数(INT)、小数(DOUBLE)、高精度小数(DECIMAL)、日期(DATE)、日期时间(DATETIME)、文本(TEXT)

支持函数表达式或算数表达式,不支持窗口函数.
## 示例

### 对销售额进行排名

假设在一个销售记录表中,每笔销售的金额存储在名为 `SalesAmount` 的字段中。为了对销售金额进行排名,可以使用如下表达式:

#### 示例公式

```plaintext
Rank(SalesAmount, "DESC")

数据示例

SaleID SalesAmount
S001 500
S002 300
S003 500
S004 200
S005 100

计算结果

SaleID SalesAmount Rank(SalesAmount, "DESC")
S001 500 1
S002 300 3
S003 500 1
S004 200 4
S005 100 5