# Right 脚本和图表功能

Right() 用于返回特定字符串，其中包含输入字符串末尾（最右边）的字符，其中字符数量由第二个参数决定。

语法：

Right(text, count)

返回数据类型： 字符串

参数

| 参数 | 描述 |
| --- | --- |
| text | 原始字符串。 |
| count | 定义从字符串 text 最右侧开始包含的字符数。 |

示例 - 图表表达式

| 示例 | 结果 |
| --- | --- |
| `Right( 'abcdef', 3 )` | 返回 `def` |

## 示例 - Right 基本原理

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Right.htm)

#### 图表表达式

概述

打开数据加载编辑器，并将下面的加载脚本添加到新部分。

加载脚本包含：

* 加载到名为 `Example` 的数据表中的数据集。

* 数据表中有以下字段：

  * `InputText`

  * `NoOfChars`

加载脚本

```
Example:
Load * inline [
InputText, NoOfChars
'abcdef', 3
'2021-07-14', 5
'2021-07-14', 2
];
```

结果

加载数据并打开工作表。创建新表并将这些字段添加为维度：

* ` InputText
                                   `

* `NoOfChars`

创建以下计算维度：

* `=Right(InputText,NoOfChars)`，用来计算需要从最右侧提取的 `InputText` 中的字符。

结果表

| InputText | NoOfChars | Right(InputText,NoOfChars) |
| --- | --- | --- |
| 2021-07-14 | 5 | 07-14 |
| abcdef | 3 | def |
| 2021-07-14 | 2 | 14 |

第一行返回 `07-14` ，因为这些是字符串 `InputText` 右侧的前 5 个字符。

第二行返回 `def` ，因为这些是字符串 `InputText` 右侧的前 3 个字符。

第三行返回 `14` ，因为这些是字符串 `InputText` 右侧的前 2 个字符。

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Right.htm)

#### 加载脚本

以下代码显示了如何在加载脚本中使用该函数。

```
Example:
Load
*,
right(Text,NoOfChars) as Right;
Load * inline [
Text, NoOfChars
'abcdef', 3
'2021-07-14', 5
'2021-07-14', 2
];
```

结果表

| 文本 | NoOfChars | 靠右 |
| --- | --- | --- |
| abcdef | 3 | def |
| 2021-07-14 | 5 | 7-14 |
| 2021-07-14 | 2 | 14 |

## 示例 – Right 场景

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Right.htm)

#### 图表表达式

概述

此示例解析数据集中的订单代码，其中包含地区代码和订单号，以创建用于数据分析的新字段。

打开数据加载编辑器，并将下面的加载脚本添加到新部分。

加载脚本包含：

* 加载到名为 `Example` 的数据表中的数据集。

* 数据表中有以下字段：

  * `OrderID`

  * `CustomerName`

  * `SalesAmount`

加载脚本

```
Example:
Load * inline [
OrderID, CustomerName, SalesAmount
US1000001, John Doe, 1500
EU3000002, Jane Smith, 2300
AS2000003, Mike Davis, 1800
];
```

结果

加载数据并打开工作表。创建新表并将这些字段添加为维度：

* `OrderID`

* `CustomerName`

* `SalesAmount`

创建以下计算维度：

* `=Right(OrderID, 7)` 用来拆分订单号。

结果表

| OrderID | CustomerName | SalesAmount | Right(OrderID, 7) |
| --- | --- | --- | --- |
| AS2000003 | Mike Davis | 1800 | 2000003 |
| EU3000002 | Jane Smith | 2300 | 3000002 |
| US1000001 | John Doe | 1500 | 1000001 |

将 ` Right  ` 函数的输出与输入 `OrderID` 进行比较。计算出的维度导出一个数值，现在可用于按数字顺序而不是字母顺序对输出进行排序等任务。