비트 연산자(Transact-SQL)
적용 대상: Microsoft Fabric의 Microsoft Fabric Warehouse에 있는 SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Platform System(PDW) SQL 분석 엔드포인트
비트 연산자는 두 식 사이의 비트 조작을 수행합니다. 이 때 식에는 정수 데이터 형식에 속하는 모든 데이터 형식을 사용할 수 있습니다.
비트 연산자는 두 개의 정수 값을 이진 비트로 변환하고, AND
, OR
또는 NOT
연산을 각 비트에서 수행하여 결과를 생성합니다. 그런 다음, 결과를 정수로 변환합니다.
예를 들어 정수 170
을 이진 1010 1010
으로 변환합니다.
정수 75
를 이진 0100 1011
로 변환합니다.
연산자 | 비트 수치 연산 |
---|---|
및 모든 위치에서 비트가 모두 1 이면 결과는 1 입니다. |
1010 1010 = 1700100 1011 = 75----------------- 0000 1010 = 10 |
OR 모든 위치에서 어느 한쪽 비트가 1 이면 결과는 1 입니다. |
1010 1010 = 1700100 1011 = 75----------------- 1110 1011 = 235 |
다음이 아님 모든 비트 위치에서 비트 값을 반대로 바꿉니다. |
1010 1010 = 170----------------- 0101 0101 = 85 |
다음 문서에서는 데이터베이스 엔진에서 사용할 수 있는 비트 연산자에 대한 자세한 정보를 제공합니다.
다음 비트 연산자는 SQL Server 2022(16.x)에 도입되었습니다.
비트 연산자의 피연산자는 정수 또는 이진 문자열 데이터 형식(image 데이터 형식은 제외)에 속하는 모든 데이터 형식이 될 수 있습니다. 단, 두 피연산자가 모두 이진 문자열 데이터 형식이어서는 안 됩니다. 다음 표에서는 지원되는 피연산자 데이터 형식을 보여 줍니다.
왼쪽 피연산자 | 오른쪽 피연산자 |
---|---|
binary | int, smallint 또는 tinyint |
bit | int, smallint, tinyint 또는 bit |
bigint | bigint, int, smallint, tinyint, binary 또는 varbinary |
int | int, smallint, tinyint, binary 또는 varbinary |
smallint | int, smallint, tinyint, binary 또는 varbinary |
tinyint | int, smallint, tinyint, binary 또는 varbinary |
varbinary | int, smallint 또는 tinyint |