Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: SQL Server 2022 (16.x)
Azure SQL Database
Azure SQL Managed Instance
SQL analytics endpoint in Microsoft Fabric
Warehouse in Microsoft Fabric SQL database
in Microsoft Fabric
Funktionen für die Bitmanipulation wie Verschieben, Abrufen (get), Festlegen oder Zählen einzelner Bits innerhalb eines Ganzzahl- oder Binärwerts ermöglichen es Ihnen, Daten effizienter zu verarbeiten und zu speichern als mit einzelnen Bits.
Ein Bit hat zwei Werte (1 oder 0, die on oder offoder true oder false darstellen). Ein Byte besteht aus einer Abfolge von 8 Bits. Funktionen für die Bitmanipulation in SQL Server behandeln das am weitesten links stehende Bit in einem Byte als das höchste (signifikanteste). Für die Funktionen für die Bitmanipulation sind Bits von rechts nach links nummeriert, wobei Bit 0 am weitesten rechts und das niedrigste ist und Bit 7 am weitesten links und das höchste.
Beispielsweise ist eine Binärabfolge von 00000111 die dezimalen Entsprechung der Zahl 7. Sie können dies mithilfe von 2er-Potenzen wie folgt berechnen:
00000111 = (2^2 + 2^1 + 2^0 = 4 + 2 + 1 = 7)
Dies bedeutet in der Praxis, dass SQL Server diesen Wert zwar als 11100000 (umgekehrte Bytereihenfolge, „byte-reversed“) speichert, er aber von den Funktionen für die Bitmanipulation als 00000111 behandelt wird.
Beim Betrachten mehrerer Bytes ist das erste Byte (links nach rechts gelesen) das höchste.
Mit den folgenden Bildern können Sie visualisieren, wie Funktionen für die Bitmanipulation von SQL Server Bit- und Byteausdruckswerte und Bit-Offsets interpretieren.
int
smallint
Functions
Es gibt fünf Funktionen für die Manipulation von Bits in SQL Server:
Alle fünf Funktionen sind auf die Arbeit mit den Datentypen tinyint, smallint, int, bigint, binary(n) und varbinary(n) ausgelegt.
Die folgenden Typen werden nicht unterstützt: varchar, nvarchar, image, ntext, text, xml und table.
Hinweise
In der anfänglichen Implementierung werden die Funktionen der „Verteilten Abfrage“ für die Funktionen zur Bitmanipulation innerhalb des verknüpften Servers oder in Ad-hoc-Abfragen (OPENQUERY) nicht unterstützt.