BIT_COUNT(Transact SQL)
적용 대상: Microsoft Fabric의 Microsoft Fabric Warehouse에 있는 SQL Server 2022(16.x) Azure SQL Database Azure SQL Managed Instance SQL 분석 엔드포인트
BIT_COUNT는 하나의 매개 변수를 사용하고 해당 매개 변수에서 1로 설정된 비트 수를 bigint 형식으로 반환합니다.
구문
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
입니다. 이는 이진의 0xabcdef
이 1010 1011 1100 1101 1110 1111
이고 값이 1
로 설정된 17비트가 있기 때문입니다.
B. 정수의 BIT_COUNT 계산
다음 예제에서는 정수에서 1
로 설정된 비트 수를 계산합니다.
SELECT BIT_COUNT ( 17 ) as Count;
결과는 2
입니다. 이는 이진의 17
이 0001 0001
이고 값이 1
로 설정된 2비트가 있기 때문입니다.