

 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\$1AND 함수
<a name="r_BIT_AND"></a>

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

모든 값에서 1로 설정된 비트가 없는 경우에는 BIT\$1AND 함수가 결과로 `0`을 반환합니다. 모든 값에서 1로 설정된 비트가 1개 이상인 경우에는 함수가 정수 값을 반환합니다. 이 정수는 1로 설정된 비트의 이진 값에 해당하는 수입니다.

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

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

이 데이터 세트에서 BIT\$1AND 연산을 실행하면 두 번째부터 마지막 자리까지만 모든 비트가 `1`로 설정되는 것을 알 수 있습니다. 결과는 정수 값 `2`를 나타내는 `00000010`의 이진 값입니다. 따라서 BIT\$1AND 함수는 `2`를 반환합니다.

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

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

## 인수
<a name="r_BIT_AND-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_end_example"></a>

유의적인 비즈니스 정보가 정수 열에 저장된다는 점을 고려했을 때 비트 단위 함수를 사용하여 해당 정보를 추출하거나 집계할 수 있습니다. 다음은 BIT\$1AND 함수를 USERLIKES라는 테이블의 LIKES 열에 적용한 후 CITY 열을 기준으로 그 결과를 그룹화한 쿼리입니다.

```
select city, bit_and(likes) from userlikes group by city 
order by city;
city          | bit_and
--------------+---------
Los Angeles   |       0
Sacramento    |       0
San Francisco |       0
San Jose      |      64
Santa Barbara |     192
(5 rows)
```

이 결과를 다음과 같이 해석할 수 있습니다.
+ Santa Barbara 시의 정수 값 `192`을 이진 값으로 변환하면 `11000000`이 됩니다. 다시 말해서 이 도시의 사용자들은 모두 스포츠와 영화는 좋아하지만 다른 유형의 이벤트는 좋아하지 않습니다.
+ 정수 `64`는 `01000000`으로 변환됩니다. 따라서 San Jose의 사용자가 모두 좋아하는 유일한 이벤트 유형은 theatre입니다.
+ 나머지 3개 도시는 정수 값이 `0`이므로 이 도시의 사용자들은 모두 좋아하는 이벤트 유형이 없는 것을 의미합니다.