Delen via


GET_BIT (Transact SQL)

van toepassing op: SQL Server 2022 (16.x) Azure SQL DatabaseAzure SQL Managed InstanceSQL Analytics-eindpunt in Microsoft FabricWarehouse in Microsoft Fabric

GET_BIT gebruikt twee parameters en retourneert de bit in expression_value die zich in de offset bevindt die is gedefinieerd door bit_offset.

Transact-SQL syntaxisconventies

Syntaxis

GET_BIT ( expression_value, bit_offset )

Argumenten

expression_value

Een geheel getal of binaire expressie die geen groot object is (LOB-).

bit_offset

Elk geheel getal.

Retourtypen

bit

De parameter bit_offset in GET_BIT wordt gebruikt om de nvan de gegevens te identificeren die moeten worden opgehaald of ingesteld. In gehele getallen is de 0th-bit de minst significante bit. In binaire typen is de 0e bit de minst significante bit in de meest rechtse byte.

GET_BIT genereert een fout als bit_offset negatief of groter is dan de laatste bit in het gegevenstype.

Opmerkingen

Gedistribueerde queryfunctionaliteit voor de bitbewerkingsfuncties binnen gekoppelde server of ad-hocquery's (OPENQUERY) worden niet ondersteund.

Grote objectgegevenstypen (LOB) in de database-engine kunnen gegevens opslaan die groter zijn dan 8000 bytes. Met deze gegevenstypen worden gegevens opgeslagen op een rij-overlooppagina gegevenspagina. Een LOB omvat ook gegevenstypen waarin gegevens worden opgeslagen in toegewezen LOB-paginastructuren, die een tekst- of afbeeldingsaanwijzer van in-rijverwijzingen naar LOB-gegevenspagina's gebruiken. Zie de architectuurhandleiding voor Pagina's en gebieden voor meer informatie over gegevensopslag.

De bitmanipulatiefuncties werken op de tinyint, smallint, int, bigint, binary(n)en varbinary(n) gegevenstypen. Grote objectgegevenstypen (LOB), zoals varchar(max), nvarchar(max), varbinary(max), afbeelding, ntext, tekst, XML-en CLR-blobtypen (Common Language Runtime) worden niet ondersteund.

Voorbeelden

In dit voorbeeld worden de tweede en vierde bits geretourneerd.

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

De resultaten zijn als volgt:

Get_2nd_Bit Get_4th_Bit
1 0

Notitie

0xabcdef in binair getal is 1010 1011 1100 1101 1110 1111. De tweede en vierde bits zijn gemarkeerd.