BIT_COUNT(Transact SQL)

적용 대상: Microsoft Fabric의 Microsoft FabricWarehouse에 있는 SQL Server 2022(16.x) Azure SQL DatabaseAzure SQL Managed InstanceSQL 분석 엔드포인트

BIT_COUNT는 하나의 매개 변수를 사용하고 해당 매개 변수에서 1로 설정된 비트 수를 bigint 형식으로 반환합니다.

Transact-SQL 구문 표기 규칙

구문

BIT_COUNT ( expression_value )

인수

expression_value

LOB(큰 개체)가 아닌 정수 또는 이진 식입니다.

반환 형식

bigint

BIT_COUNT는 비트 수를 계산하기 전에 캐스팅되지 않습니다. 이는 동일한 숫자가 데이터 형식에 따라 이진 표현에서 다른 개수를 가질 수 있기 때문입니다.

예를 들어 SELECT BIT_COUNT (CAST (-1 as smallint))SELECT BIT_COUNT (CAST (-1 as int))는 각각 16과 32를 반환합니다. -1의 이진 표현은 데이터 형식에 따라 다른 수의 비트가 1로 설정될 수 있기 때문에 의도된 것입니다.

설명

초기 구현에서는 연결된 서버 내의 비트 조작 함수 또는 OPENQUERY(임시 쿼리)에 대한 분산 쿼리 기능이 지원되지 않습니다.

A. 이진 값으로 BIT_COUNT 계산

다음 예제에서는 이진 값에서 1로 설정된 비트 수를 계산합니다.

SELECT BIT_COUNT ( 0xabcdef ) as Count;

결과는 17입니다. 이는 이진의 0xabcdef1010 1011 1100 1101 1110 1111이고 값이 1로 설정된 17비트가 있기 때문입니다.

B. 정수의 BIT_COUNT 계산

다음 예제에서는 정수에서 1로 설정된 비트 수를 계산합니다.

SELECT BIT_COUNT ( 17 ) as Count;

결과는 2입니다. 이는 이진의 170001 0001이고 값이 1로 설정된 2비트가 있기 때문입니다.

추가 정보