Freigeben über


GET_BIT (Transact SQL)

Gilt für: SQL Server 2022 (16.x) Azure SQL-Datenbank Azure SQL verwaltete Instanz SQL Analytics-Endpunkt in Microsoft Fabric Warehouse in Microsoft Fabric Warehouse in Microsoft Fabric

GET_BIT akzeptiert zwei Parameter und gibt das Bit in expression_value zurück, das sich im durch bit_offsetdefinierten Offset befindet.

Transact-SQL-Syntaxkonventionen

Syntax

GET_BIT ( expression_value, bit_offset )

Argumente

expression_value

Ein ganzzahliger oder binärer Ausdruck, der kein großes Objekt ist (LOB-).

bit_offset

Beliebige ganze Zahl.

Rückgabetypen

bit

Der bit_offset-Parameter in GET_BIT wird verwendet, um die nth Bit der Daten zu identifizieren, die abgerufen oder festgelegt werden sollen. In ganzzahligen Typen ist das 0te Bit das am wenigsten signifikante Bit. In Binärtypen ist das 0te Bit das 0am wenigsten signifikante Bit im am weitesten rechts stehenden Byte.

GET_BIT löst einen Fehler aus, wenn bit_offset negativ oder größer als das letzte Bit im Datentyp ist.

Hinweise

Verteilte Abfragefunktionen für die Bitmanipulationsfunktionen in verknüpften Server- oder Ad-hoc-Abfragen (OPENQUERY) werden nicht unterstützt.

Datentypen für große Objekte (LOB) im Datenbankmodul können Daten speichern, die 8.000 Bytes überschreiten. Diese Datentypen speichern Daten auf einer Zeilenüberlauf Datenseite. Ein LOB umfasst auch Datentypen, die Daten in dedizierten BRANCHENseitenstrukturen speichern, die einen Text oder einen Bildzeiger von In-Zeilen-Verweisen auf LOB-Datenseiten verwenden. Weitere Informationen zur Datenspeicherung finden Sie im Pages and extents architecture guide.

Die Bitmanipulationsfunktionen arbeiten mit tinyint, smallint, int, bigint, binary(n)und varbinary(n) Datentypen. Datentypen für große Objekte (LOB), z. B. varchar(max), nvarchar(max), varbinary(max), Bild, ntext, Text, XML-und CLR-BLOB-Typen (Common Language Runtime) werden nicht unterstützt.

Beispiele

In diesem Beispiel werden das zweite und vierte Bit zurückgegeben.

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

Die Ergebnisse lauten wie folgt:

Get_2nd_Bit Get_4th_Bit
1 0

Hinweis

0xabcdef ist in Binärdarstellung 1010 1011 1100 1101 1110 1111. Das zweite und vierte Bit sind hervorgehoben.