対象者: 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
GET_BIT は 2 つのパラメーターを受け取り、bit_offsetで定義されたオフセット内にあるビットを expression_value で返します。
構文
GET_BIT ( expression_value, bit_offset )
引数
expression_value
ラージ オブジェクトではない任意の整数式またはバイナリ式 (LOB)。
bit_offset
任意の整数。
戻り値の型
bit
の GET_BIT パラメーターは、取得または設定するデータの nビットを識別するために使用されます。 整数型の場合、0 番目のビットは最下位ビットです。 バイナリ型の場合、0 番目のビットは右端のバイトの最下位ビットです。
GET_BIT がデータ型の最後のビットより負か大きい場合、 はエラーをスローします。
注釈
リンク サーバーまたはアドホック クエリ (OPENQUERY) 内のビット操作関数の分散クエリ機能はサポートされていません。
データベース エンジンのラージ オブジェクト (LOB) データ型は、8,000 バイトを超えるデータを格納できます。 これらのデータ型は、行オーバーフロー データ ページにデータを格納します。 LOB には、LOB データ ページへの行内参照のテキストまたはイメージ ポインターを使用する、専用の LOB ページ構造にデータを格納するデータ型も含まれます。 データ ストレージの詳細については、「ページとエクステントのアーキテクチャ ガイド」を参照してください。
ビット操作関数は、tinyint、smallint、int、bigint、binary(n)、および varbinary(n) データ型で動作します。 varchar(max)、nvarchar(max)、varbinary(max)、イメージ、ntext、テキスト、xml、共通言語ランタイム (CLR) BLOB 型などのラージ オブジェクト (LOB) データ型はサポートされていません。
例
この例では、2 番目と 4 番目のビットが返されます。
SELECT GET_BIT ( 0xabcdef, 2 ) as Get_2nd_Bit,
GET_BIT ( 0xabcdef, 4 ) as Get_4th_Bit;
結果は次のようになります。
| Get_2nd_Bit | Get_4th_Bit |
|---|---|
| 1 | 0 |
注意
バイナリの 0xabcdef は 1010 1011 1100 1101 1110 1111 です。 2 番目と 4 番目のビットが強調表示されています。