

 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/)을 참조하세요.

# MURMUR3\$132\$1HASH
<a name="MURMUR3_32_HASH"></a>

MURMUR3\$132\$1HASH 함수는 숫자 및 문자열 유형을 비롯한 모든 일반 데이터 유형에 대해 32비트 Murmur3A 비암호화 해시를 계산합니다.

## 구문
<a name="MURMUR3_32_HASH-syntax"></a>

```
MURMUR3_32_HASH(value [, seed])
```

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

 * 값*   
입력 값은 해시 처리합니다. Amazon Redshift 는 입력 값의 바이너리 표현을 해시한 예입니다. 이 동작은 [FNV\$1HASH 함수](r_FNV_HASH.md)과 비슷하지만 값이 [Apache Iceberg 32비트 Murmur3 해시 사양](https://iceberg.apache.org/spec/#appendix-b-32-bit-hash-requirements)에 지정된 바이너리 표현으로 변환됩니다.

 *%seed*   
해시 함수의 INT 시드입니다. 이 인수는 선택 사항입니다. 지정하지 않으면 Amazon Redshift는 기본 0 시드를 사용합니다. 이렇게 하면 변환 또는 연결 없이 여러 열의 해시를 결합할 수 있습니다.

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

함수는 INT를 반환합니다.

## 예제
<a name="MURMUR3_32_HASH-example"></a>

다음은 숫자의 Murmur3 해시, 'Amazon Redshift' 문자열 및 이 둘의 연결을 반환하는 예입니다.

```
select MURMUR3_32_HASH(1);
    
    MURMUR3_32_HASH
----------------------
 1392991556
(1 row)
```

```
select MURMUR3_32_HASH('Amazon Redshift');
    
    MURMUR3_32_HASH
----------------------
 -1563580564
(1 row)
```

```
select MURMUR3_32_HASH('Amazon Redshift', MURMUR3_32_HASH(1));
    
    MURMUR3_32_HASH
----------------------
 -1346554171
(1 row)
```

## 사용 노트
<a name="MURMUR3_32_HASH-usage-notes"></a>

여러 열이 있는 테이블의 해시를 계산하려면 첫 번째 열의 Murmur3 해시를 계산하여 두 번째 열의 해시에 시드로 전달하면 됩니다. 그런 다음 두 번째 열의 Murmur3 해시를 세 번째 열의 해시에 시드로 전달합니다.

다음은 여러 열이 있는 테이블을 해시 처리할 시드를 생성하는 예입니다.

```
select MURMUR3_32_HASH(column_3, MURMUR3_32_HASH(column_2, MURMUR3_32_HASH(column_1))) from sample_table;
```

동일한 속성을 사용하여 문자열 연결 해시를 계산할 수 있습니다.

```
select MURMUR3_32_HASH('abcd');
   
   MURMUR3_32_HASH
---------------------
 1139631978
(1 row)
```

```
select MURMUR3_32_HASH('cd', MURMUR3_32_HASH('ab'));
   
   MURMUR3_32_HASH
---------------------
 1711522338
(1 row)
```

해시 함수는 입력 유형을 사용하여 해시 처리할 바이트 수를 결정합니다. 필요한 경우 캐스팅을 사용하여 특정 유형을 적용합니다.

다음은 다른 결과를 생성하기 위해 다른 입력 유형을 사용하는 예입니다.

```
select MURMUR3_32_HASH(1, MURMUR3_32_HASH(1));
   
   MURMUR3_32_HASH
--------------------
 -1193428387
(1 row)
```

```
select MURMUR3_32_HASH(1);
   
   MURMUR3_32_HASH
----------------------
 1392991556
(1 row)
```

```
select MURMUR3_32_HASH(1, MURMUR3_32_HASH(2));
   
   MURMUR3_32_HASH
----------------------
 1179621905
(1 row)
```