

 Amazon Redshift는 패치 198부터 새 Python UDF 생성을 더 이상 지원하지 않습니다. 기존 Python UDF는 2026년 6월 30일까지 계속 작동합니다. 자세한 내용은 [블로그 게시물](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)을 참조하세요.

# STRPOS 함수
<a name="r_STRPOS"></a>

지정한 문자열 내에서 하위 문자열의 위치를 반환합니다.

유사한 함수는 [CHARINDEX 함수](r_CHARINDEX.md) 및 [POSITION 함수](r_POSITION.md) 섹션을 참조하세요.

## 구문
<a name="r_STRPOS-synopsis"></a>

```
STRPOS(string, substring )
```

## 인수
<a name="r_STRPOS-arguments"></a>

 *문자열*()   
첫 번째 입력 파라미터는 검색 대상인 `CHAR` 또는 `VARCHAR` 문자열입니다.

 *substring*   
두 번째 파라미터는 *string* 내에서 검색할 하위 문자열입니다.

## 반환 타입
<a name="r_STRPOS-return-type"></a>

INTEGER  
STRPOS 함수는 **하위 문자열의 위치에 해당하는 `INTEGER`를 반환합니다(0이 아닌 1부터 시작). 이 위치는 바이트가 아닌 문자 수를 기준으로 하기 때문에 멀티바이트 문자도 단일 문자로 계산됩니다.

## 사용 노트
<a name="r_STRPOS_usage_notes"></a>

**문자열 내에서 **하위 문자열을 찾을 수 없는 경우 STRPOS는 `0`을 반환합니다.

```
SELECT STRPOS('dogfish', 'fist');

+--------+
| strpos |
+--------+
|      0 |
+--------+
```

## 예제
<a name="r_STRPOS-examples"></a>

`dogfish` 내에서 `fish`의 위치를 표시하려면 다음 예제를 사용합니다.

```
SELECT STRPOS('dogfish', 'fish');

+--------+
| strpos |
+--------+
|      4 |
+--------+
```

다음 예제에서는 TICKIT 샘플 데이터베이스의 SALES 테이블 데이터를 사용합니다. 자세한 내용은 [샘플 데이터베이스](c_sampledb.md) 섹션을 참조하세요.

SALES 테이블에서 COMMISSION이 999.00을 초과하는 판매 거래 수를 반환하려면 다음 예제를 사용합니다.

```
SELECT DISTINCT STRPOS(commission, '.'),
COUNT (STRPOS(commission, '.'))
FROM sales
WHERE STRPOS(commission, '.') > 4
GROUP BY STRPOS(commission, '.')
ORDER BY 1, 2;

+--------+-------+
| strpos | count |
+--------+-------+
|      5 |   629 |
+--------+-------+
```