

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

# BIT\$1OR 함수
<a name="r_BIT_OR"></a>

BIT\$1OR 함수는 단일 정수 열 또는 표현식의 모든 값에 대해 비트 단위 OR 연산을 실행합니다. 이 함수는 표현식에서 각 정수 값에 해당하는 각 이진 값의 개별 비트를 집계합니다.

예를 들어 한 테이블의 열에 정수 값으로 3, 7, 10 및 22가 포함되어 있다고 가정합니다. 이 정수의 이진 값은 다음과 같이 표현됩니다.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/dg/r_BIT_OR.html)

BIT\$1OR 함수를 정수 값 집합에 적용하면 연산은 각 위치에서 `1`이 있는 값을 찾습니다. 이때 `1`은 최소 1개 이상의 값에서 마지막 5자리에 존재하기 때문에 이진 값으로 `00011111`이 산출되고, 이에 따라 함수는 `31`(`16 + 8 + 4 + 2 + 1`)을 반환합니다.

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

```
BIT_OR ( [DISTINCT | ALL] expression )
```

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

 * expression*   
함수가 실행되는 대상 열 또는 표현식입니다. 이 표현식의 데이터 형식은 INT, INT2 또는 INT8이 되어야 합니다. 함수도 동일한 INT, INT2 또는 INT8 데이터 형식을 반환합니다.

DISTINCT \$1 ALL  
인수가 DISTINCT일 때는 함수가 결과를 계산하기 전에 지정한 표현식의 중복 값을 모두 제거합니다. 인수가 ALL일 때는 함수가 모든 중복 값을 그대로 유지합니다. ALL이 기본값입니다. 자세한 내용은 [비트 단위 집계를 위한 DISTINCT 지원](c_bitwise_aggregate_functions.md#distinct-support-for-bit-wise-aggregations) 섹션을 참조하세요.

## 예제
<a name="r_bit_or_example"></a>

다음은 BIT\$1OR 함수를 USERLIKES라는 테이블의 LIKES 열에 적용한 후 CITY 열을 기준으로 그 결과를 그룹화한 쿼리입니다.

```
select city, bit_or(likes) from userlikes group by city
order by city;
city          | bit_or
--------------+--------
Los Angeles   |    127
Sacramento    |    255
San Francisco |    255
San Jose      |    255
Santa Barbara |    255
(5 rows)
```

위의 4개 도시에서는 모든 이벤트 유형을 좋아하는 사용자가 1명 이상입니다(`255=11111111`). 하지만 Los Angeles에서는 스포츠를 제외한 모든 이벤트 유형을 좋아하는 사용자가 1명 이상입니다(`127=01111111`).