# Left 指令碼與圖表函數

Left() 會傳回包含輸入字串第一個 (最左側) 字元的字串，其中字元數由第二個引數決定。

語法：

Left(text, count)

傳回的資料類型： 字串

引數

| 引數 | 描述 |
| --- | --- |
| text | 原始字串。 |
| count | 定義要在字串 text 左側部分中包括的字元數目。 |

範例：圖表運算式

| 範例 | 結果 |
| --- | --- |
| `Left( 'abcdef', 3 )` | 傳回 `abc` |

## 範例 - Left 基礎事項

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

#### 圖表運算式

概述

開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。

載入指令碼包含：

* 載入到稱為 `Example` 之資料表格的資料集。

* 資料表格中的欄位如下：

  * `InputText`

  * `NoOfChars`

載入指令碼

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

結果

載入資料並開啟工作表。建立新的表格並將這些欄位新增為維度：

* ` InputText
                                   `

* `NoOfChars`

建立下列計算維度：

* `=Left(InputText,NoOfChars)`

結果表格

| InputText | NoOfChars | Left(InputText,NoOfChars) |
| --- | --- | --- |
| abcdef | 3 | abc |
| 2021-07-14 | 2 | 20 |
| 2021-07-14 | 4 | 2021 |

第一列傳回 `abc`，因為這些是字串 `InputText` 左側的前 3 個字元。

第二列傳回 `20`，因為這些是字串 `InputText` 左側的前 2 個字元。

第三列傳回 `2021`，因為這些是字串 `InputText` 左側的前 4 個字元。

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

#### 載入指令碼

以下程式碼顯示如何在載入指令碼中使用該函數。

```
Example:
Load
*,
left(Text,NoOfChars) as Left;
Load * inline [
Text, NoOfChars
'abcdef', 3
'2021-07-14', 4
'2021-07-14', 2
];
```

結果表格

| 文字 | NoOfChars | 左 |
| --- | --- | --- |
| abcdef | 3 | abc |
| 2021-07-14 | 4 | 2021 |
| 2021-07-14 | 2 | 20 |

## 範例 - Left 使用情境

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

#### 圖表運算式

概述

此範例剖析資料集中的訂單代碼 (其中包含區域代碼、年份和訂單編號)，以建立用於資料分析的新欄位。

開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。

載入指令碼包含：

* 載入到稱為 `Example` 之資料表格的資料集。

* 資料表格中的欄位如下：

  * `OrderID`

  * `CustomerName`

  * `SalesAmount`

載入指令碼

```
Example:
Load * inline [
OrderID, CustomerName, SalesAmount
US2024001, John Doe, 1500
EU2024002, Jane Smith, 2300
AS2024003, Mike Davis, 1800
];
```

結果

載入資料並開啟工作表。建立新的表格並將這些欄位新增為維度：

* `OrderID`

* `CustomerName`

* `SalesAmount`

建立下列計算維度：

* `=Left(OrderID, 2)` 用來計算區域。

結果表格

| OrderID | CustomerName | SalesAmount | Left(OrderID, 2) |
| --- | --- | --- | --- |
| AS2024003 | Mike Davis | 1800 | AS |
| EU2024002 | Jane Smith | 2300 | EU |
| US2024001 | John Doe | 1500 | 美國 |

`Left` 函數的輸出剖析 OrderID 以擷取區域，建立一個新欄位，以用於進一步的資料分析。

## 範例 - 左側進階情境

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

#### 圖表運算式

概述

此範例剖析資料集中的產品代碼 (其中包含部門類別代碼和唯一識別碼 )，以建立用於資料分析的新欄位。

開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。

載入指令碼包含：

* 載入到稱為 Example 之資料表格的資料集。

* 資料表格中稱為 ProductCode 的一個欄位。

載入指令碼

```
Example:
Load * inline [
ProductCode
ELC12345
HOM67890
FAS09876
];
```

結果

載入資料並開啟工作表。建立新的表格並將此欄位新增為維度：

* ProductCode

建立下列計算維度：

* =Pick(Match(left(ProductCode,3),'ELC','HOM','FAS'),'Electronics','Home Appliances','Fashion')，用來計算部門。

結果表格

| ProductCode | Pick(Match(left(ProductCode,3),'ELC','HOM','FAS'),'Electronics','Home Appliances','Fashion') |
| --- | --- |
| ELC12345 | 電子產品 |
| FAS09876 | 時尚 |
| HOM67890 | 家電 |

輸出使用 Pick、Match 和 Left 函數，從產品代碼擷取部門，進而建立一個用於資料分析的新欄位。

亦請參閱 [Index 指令碼與圖表函數](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Index.htm)，允許更複雜的字串分析。