| title | GET_BIT (Transact-SQL) | |||
|---|---|---|---|---|
| description | Transact-SQL reference for the GET_BIT function. | |||
| author | thesqlsith | |||
| ms.author | derekw | |||
| ms.reviewer | randolphwest | |||
| ms.date | 07/26/2022 | |||
| ms.prod | sql | |||
| ms.prod_service | database-engine | |||
| ms.technology | t-sql | |||
| ms.topic | reference | |||
| f1_keywords |
|
|||
| helpviewer_keywords |
|
|||
| dev_langs |
|
|||
| monikerRange | >= sql-server-ver16 || >= sql-server-linux-ver16 |
GET_BIT takes two parameters and returns the bit in expression_value that is in the offset defined by bit_offset.
:::image type="icon" source="../../database-engine/configure-windows/media/topic-link.gif" border="false"::: Transact-SQL Syntax Conventions
GET_BIT ( expression_value, bit_offset )
Any integer or binary expression that isn't a large object (LOB).
Any integer.
bit
The bit_offset parameter in GET_BIT is used to identify the nth bit of the data to get or set. In integer types, the 0^th bit is the least significant bit. In binary types, the 0^th bit is the least significant bit in the rightmost byte.
GET_BIT will throw an error if bit_offset is negative or greater than the last bit in the data type.
In the initial implementation, we won't support Distributed Query functionality for the bit manipulation function intrinsics, within linked server and ad hoc queries.
In this example, the second and fourth bits are returned.
SELECT GET_BIT ( 0xabcdef, 2 ) as Get_2nd_Bit,
GET_BIT ( 0xabcdef, 4 ) as Get_4th_Bit;The results are as follows:
| Get_2nd_Bit | Get_4th_Bit |
|---|---|
| 1 | 0 |
Note
0xabcdef in binary is 1010 1011 1100 1101 1110 1111. The second and fourth bits are highlighted.