Wenn eine Ganzzahl in ein Bit-Array konvertiert wird, ist die Länge des Bit-Arrays die Anzahl von Bits im Ganzzahltyp, und der Wert des Bit-Arrays ist die binäre Darstellung der Ganzzahl. Das signifikanteste Bit der Ganzzahl wird zum ersten Bit im Array.
SELECT CAST( CAST( 1 AS BIT ) AS VARBIT )
gibt ein VARBIT(1) zurück, das '1' enthält.
SELECT CAST( CAST( 8 AS TINYINT ) AS VARBIT )
gibt ein VARBIT(8) zurück, das '00001000' enthält.
SELECT CAST( CAST( 194 AS INTEGER ) AS VARBIT )
gibt ein VARBIT(32) zurück, das '00000000000000000000000011000010' enthält.
Wenn ein Binärtyp der Länge n in ein Bit-Array konvertiert wird, beträgt die Länge des Arrays n * 8 Bit. Die ersten 8 Bits des Bit-Arrays werden zum ersten Byte des Binärwerts. Das signifikanteste Bit des Binärwerts wird zum ersten Bit im Array. Die nächsten 8 Bits des Bit-Arrays werden zum zweiten Byte des Binärwerts, usw.
SELECT CAST( 0x8181 AS VARBIT )
gibt ein VARBIT(16) zurück, das '1000000110000001' enthält.
Wenn ein Zeichendatentyp der Länge n in ein Bit-Array konvertiert wird, beträgt die Länge des Arrays n Bit. Jedes Zeichen muss '0' oder '1' sein, und dem entsprechendem Bit des Arrays wird der Wert "0" oder "1" zugeordnet.
SELECT CAST( '001100' AS VARBIT )
gibt ein VARBIT(6) zurück, das '001100' enthält.
Wenn ein Bit-Array in einen Ganzahl-Datentyp konvertiert wird, wird der Binärwert des Bit-Arrays anhand des Speicherformats des Ganzzahltyps interpretiert, wobei das signifikanteste Bit zuerst verwendet wird.
SELECT CAST( CAST( '11000010' AS VARBIT ) AS INTEGER )
gibt 194 zurück (110000102 = 0xC2 = 194).
Wenn ein Bit-Array in einen Binärwert konvertiert wird, werden die ersten 8 Bits des Arrays zum ersten Byte des Binärwerts. Das erste Bit des Arrays wird zum signifikantesten Bit des Binärwerts. Die nächsten 8 Bits werden als zweites Byte verwendet, usw. Wenn die Länge des Bit-Arrays nicht ein Vielfaches von 8 ist, werden zusätzliche Nullen verwendet, um das insignifikanteste Bit des letzten Bytes des Binärwerts aufzufüllen.
SELECT CAST( CAST( '1111' AS VARBIT ) AS BINARY )
gibt 0xF0 zurück (11112 wird 111100002 = 0xF0).
SELECT CAST( CAST( '0011000000110001' AS VARBIT ) AS BINARY )
gibt 0x3031 zurück (00110000001100012 = 0x3031).
Wenn ein Bit-Array der Länge n in einen Zeichendatentyp konvertiert wird, beträgt die Länge des Ergebnisses n Zeichen. Jedes Zeichen im Ergebnis ist '0' oder '1', abhängig vom Bit im Array.
SELECT CAST( CAST( '01110' AS VARBIT ) AS VARCHAR )
gibt die Zeichenfolge '01110' zurück.
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |