整数をビット配列に変換すると、ビット配列の長さは整数型のビット数になり、ビット配列の値は整数のバイナリ表現になります。整数の最上位ビットは配列の最初のビットになります。
SELECT CAST( CAST( 1 AS BIT ) AS VARBIT )
は 1 を含む VARBIT(1) を返します。
SELECT CAST( CAST( 8 AS TINYINT ) AS VARBIT )
は 00001000 を含む VARBIT(8) を返します。
SELECT CAST( CAST( 194 AS INTEGER ) AS VARBIT )
は 00000000000000000000000011000010 を含む VARBIT(32) を返します。
長さ n のバイナリ型をビット配列に変換すると、配列の長さは n * 8 ビットになります。ビット配列の最初の 8 ビットはバイナリ値の最初のバイトになります。バイナリ値の最上位ビットは配列の最初のビットになります。ビット配列の次の 8 ビットはバイナリ値の 2 番目のバイトになります。以降も同様です。
SELECT CAST( 0x8181 AS VARBIT )
は 1000000110000001 を含む VARBIT(16) を返します。
長さ n の文字データ型をビット配列に変換すると、配列の長さは n ビットになります。各文字は '0' または '1' で、配列の対応するビットには値 0 または 1 が割り当てられます。
SELECT CAST( '001100' AS VARBIT )
は 001100 を含む VARBIT(6) を返します。
ビット配列を整数データ型に変換すると、ビット配列のバイナリ値は、最初に最上位ビットを使用し、整数型の格納形式に従って解釈されます。
SELECT CAST( CAST( '11000010' AS VARBIT ) AS INTEGER )
は 194 (110000102 = 0xC2 = 194) を返します。
ビット配列をバイナリに変換すると、配列の最初の 8 ビットがバイナリ値の最初のバイトになります。配列の最初のビットは、バイナリ値の最上位ビットになります。続く 8 ビットは 2 番目のバイトとして使用されます。以降も同様です。ビット配列の長さが 8 の倍数ではない場合、バイナリ値の最終バイトの最下位ビットに入力するときに追加の 0 が使用されます。
SELECT CAST( CAST( '1111' AS VARBIT ) AS BINARY )
は 0xF0 (11112 は 111100002 = 0xF0 になります) を返します。
SELECT CAST( CAST( '0011000000110001' AS VARBIT ) AS BINARY )
は 0x3031 (00110000001100012 = 0x3031) を返します。
長さ n ビットのビット配列を文字データ型に変換すると、結果の長さは n 文字になります。結果の各文字には、配列のビットに応じて '0' または '1' が指定されます。
SELECT CAST( CAST( '01110' AS VARBIT ) AS VARCHAR )
は文字列 '01110' を返します。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |