Partage via


GET_BIT (Transact SQL)

S’applique à : point de terminaison d’analyse SQL Server 2022 (16.x) Azure SQL Database Azure SQL Managed Instance SQL dans Microsoft Fabric Warehouse

GET_BIT prend deux paramètres et retourne le bit dans expression_value qui se trouve dans le décalage défini par bit_offset.

Conventions de la syntaxe Transact-SQL

Syntaxe

GET_BIT ( expression_value, bit_offset )

Arguments

expression_value

Toute expression entière ou binaire qui n’est pas un objet volumineux (LOB).

bit_offset

Tout entier.

Types de retour

bit

Le paramètre bit_offset dans GET_BIT est utilisé pour identifier le nième bit des données à obtenir ou définir. Dans les types entiers, le 0ième bit est le bit le moins significatif. Dans les types binaires, le 0ième bit est le bit le moins significatif dans l’octet le plus à droite.

GET_BIT génère une erreur si bit_offset est négative ou supérieure au dernier bit du type de données.

Remarques

Les fonctionnalités de requête distribuée pour les fonctions de manipulation de bits au sein d’un serveur lié ou de requêtes ad hoc (OPENQUERY) ne sont pas prises en charge.

Les types de données objet volumineux (LOB) dans le moteur de base de données peuvent stocker des données qui dépassent 8 000 octets. Ces types de données stockent des données sur une page de données de dépassement de ligne. Un métier englobe également les types de données qui stockent des données sur des structures de page métier dédiées, qui utilisent un texte ou un pointeur d’image de références en ligne aux pages de données métier. Pour plus d’informations sur le stockage de données, consultez le guide d’architecture Pages et étendues.

Les fonctions de manipulation de bits fonctionnent sur le tinyint, smallint , int, bigint, binary(n), et varbinary(n) types de données. Les types de données LOB (Large Object), tels que varchar(max), nvarchar(max), varbinary(max), image, ntext, text, xmlet les types BLOB CLR (Common Language Runtime) ne sont pas pris en charge.

Exemples

Dans cet exemple, les deuxième et quatrième bits sont retournés.

SELECT GET_BIT ( 0xabcdef, 2 ) as Get_2nd_Bit,
GET_BIT ( 0xabcdef, 4 ) as Get_4th_Bit;

Les résultats sont les suivants :

Get_2nd_Bit Get_4th_Bit
1 0

Notes

0xabcdef en binaire est 1010 1011 1100 1101 1110 1111. Les deuxième et quatrième bits sont mis en surbrillance.