# Mid - 스크립트 및 차트 함수

Mid()는 두 번째 인수 'start'로 정의된 문자의 위치에서 시작되고 세 번째 인수 'count'로 정의된 문자 수를 반환하는 입력 문자열의 일부를 반환합니다. 'count'를 생략하면 입력 문자열의 나머지가 반환됩니다. 입력 문자열의 첫 번째 문자는 번호가 1로 지정됩니다.

구문:

Mid(text, start[, count])

반환 데이터 유형: 문자열

인수

| 인수 | 설명 |
| --- | --- |
| text | 원래 문자열입니다. |
| start | text에 포함할 첫 번째 문자의 위치를 정의하는 정수입니다. |
| count | 출력 문자열의 길이를 정의합니다. 생략된 경우 start로 정의된 위치의 모든 문자가 포함됩니다. |

예: 차트 표현식

| 예 | 결과 |
| --- | --- |
| `Mid( 'abcdef',3 )` | `cdef`를 반환합니다. |
| `Mid( 'abcdef',3, 2 )` | `cd`를 반환합니다. |

## 예 - Mid 기본 사항

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

#### 차트 표현식

개요

데이터 로드 편집기를 열고 새 섹션에 아래 로드 스크립트를 추가합니다.

로드 스크립트에는 다음이 포함됩니다.

* `Example`이라는 데이터 테이블에 로드되는 데이터 집합입니다.

* 데이터 테이블의 필드는 다음과 같습니다.

  * `InputText`, 원래 텍스트 문자열

  * `StartPosition`: 처리 후 원래 텍스트 문자열에서 포함할 첫 번째 문자의 시작 위치

  * `CharacterCount`: 반환할 문자 수(선택 매개 변수)

로드 스크립트

```
Example:
Load * inline [
InputText, StartPosition, CharacterCount
abcdef, 3, 2
abcdef, 2, 3
210714, 3, 2
210714, 2, 3
];
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* ` InputText
                                   `

* `StartPosition`

* `CharacterCount`

다음과 같이 계산 차원을 만듭니다.

* `=mid(InputText,StartPosition)`은 `StartPosition` 필드의 값에서 시작하여 `InputText`에서 추출할 문자를 계산합니다. `Count` 매개 변수가 제공되지 않았으므로 이 함수는 `StartPosition` 값부터 `InputString` 끝까지의 모든 문자를 반환합니다.

* `=mid(InputText,StartPosition,CharacterCount)`는 `StartPosition` 필드의 값에서 시작하여 `InputText`에서 추출할 문자를 계산합니다. `CharacterCount`의 값은 `StartPosition` 필드의 값부터 시작하여 반환되는 문자 수를 결정합니다.

결과 테이블

| InputText | StartPosition | CharacterCount | Mid(InputText,StartPosition) | Mid(InputText,StartPosition,CharacterCount |
| --- | --- | --- | --- | --- |
| abcdef | 2 | 3 | bcdef | bcd |
| abcdef | 3 | 2 | cdef | CD |
| 20210714 | 2 | 3 | 10714 | 107 |
| 20210714 | 3 | 2 | 0714 | 07 |

첫 번째 행은 첫 번째 표현식에 대한 `bcdef` 값을 반환합니다. 표현식은 위치 2에서 시작하고 `Count` 인수가 설정되지 않았기 때문에 모든 문자를 반환합니다. 두 번째 표현식도 위치 2에서 시작하지만 `Count` 인수가 2이기 때문에 문자 `bcd`만 반환합니다.

두 번째 행은 첫 번째 표현식에 대한 `cdef` 값을 반환합니다. 표현식은 위치 3에서 시작하고 `Count` 인수가 설정되지 않았기 때문에 모든 문자를 반환합니다. 두 번째 표현식도 위치 3에서 시작하지만 `Count` 인수가 2이기 때문에 `cd` 문자만 반환합니다.

세 번째 행은 첫 번째 표현식에 대한 `10714` 값을 반환합니다. 표현식은 위치 2에서 시작하고 `Count` 인수가 설정되지 않았기 때문에 모든 문자를 반환합니다. 두 번째 표현식도 위치 2에서 시작하지만 `Count` 인수가 3이기 때문에 `107` 문자만 반환합니다.

네 번째 행은 첫 번째 표현식에 대한 `0714` 값을 반환합니다. 표현식은 위치 3에서 시작하고 `Count` 인수가 설정되지 않았기 때문에 모든 문자를 반환합니다. 두 번째 표현식도 위치 2에서 시작하지만 `Count` 인수가 2이기 때문에 문자 `07`만 반환합니다.

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

#### 로드 스크립트

다음 코드는 로드 스크립트에서 함수를 사용하는 방법을 보여 줍니다.

```
Example:
Load *,
mid(Text,StartPosition) as Mid1,
mid(Text,StartPosition,Count) as Mid2;
Load * inline [
Text, StartPosition, Count
'abcdef', 3, 2
'abcdef', 2, 3
'210714', 3, 2
'210714', 2, 3
];
```

결과 테이블

| 텍스트 | StartPosition | Mid1 | 개수 | Mid2 |
| --- | --- | --- | --- | --- |
| abcdef | 3 | cdef | 2 | CD |
| abcdef | 2 | bcdef | 3 | bcd |
| 210714 | 3 | 0714 | 2 | 07 |
| 210714 | 2 | 10714 | 3 | 107 |

## 예 - Mid 시나리오

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

#### 차트 표현식

개요

데이터 소스에 `OrderID`라는 열이 포함되어 있으며, 이 열은 `ORDYYYY-COUNTRYCODE-ORDERNUMBER`라는 구조화된 형식을 사용합니다. 보고 요구 사항을 충족하려면 국가 코드를 별도의 열로 추출하여 제시해야 합니다.

데이터 로드 편집기를 열고 새 섹션에 아래 로드 스크립트를 추가합니다.

로드 스크립트에는 다음이 포함됩니다.

* `Orders`라는 데이터 테이블에 로드되는 데이터 집합입니다.

* 데이터 테이블의 한 필드는 `OrderID`입니다.

로드 스크립트

```
Orders:
Load * inline [
OrderID
ORD2024-US-123456
ORD2024-UK-654321
ORD2024-CA-789123
];
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 이 필드를 차원으로 추가합니다.

* ` OrderID
                                   `

다음 계산된 차원을 만듭니다.

* `=Mid(OrderID, 9, 2)`는 `OrderID`에서 두 문자 국가 코드를 추출합니다.

결과 테이블

| OrderID | Mid(OrderID, 9, 2) |
| --- | --- |
| ORD2024-CA-789123 | CA |
| ORD2024-UK-654321 | UK |
| ORD2024-US-123456 | 미국 |

`Mid` 함수의 출력은 `OrderID` 문자열 값에서 두 문자 국가 코드를 성공적으로 추출했습니다.

## 자세한 정보

* [Index - 스크립트 및 차트 함수](https://help.qlik.com/ko-KR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Index.htm)