Documentazione di PostgreSQL 9.0 > Il linguaggio SQL > Funzioni e Operatori > Funzioni e operatori per stringhe di bit
PrecedenteFunzioni e operatori per stringhe binarieConfronto con modelliSuccessivo

9.6. Funzioni e operatori per stringhe di bit

Questa sezione descrive le funzioni e gli operatori per esaminare e manipolare stringhe di bit, che sono valori di tipo bit e bit varying. Oltre ai normali operatori di confronto, si possono usare gli operatori mostrati nella tabella Tabella 9.10, «Operatori per stringhe di bit». Gli operandi stringhe di bit di &, |, e # devono avere lunghezza uguale. Quando vengono spostati bit, la lunghezza originale della stringa viene salvaguardata, come mostrato negli esempi.

Tabella 9.10. Operatori per stringhe di bit

OperatoreDescrizioneEsampioRisultato
|| concatenamentoB'10001' || B'011'10001011
& bitwise ANDB'10001' & B'01101'00001
| bitwise ORB'10001' | B'01101'11101
# bitwise XORB'10001' # B'01101'11100
~ bitwise NOT~ B'10001'01110
<< bitwise spostamento a sinistraB'10001' << 301000
>> bitwise spostamento a destraB'10001' >> 200100

La seguenti funzioni standard-SQL lavorano su stringhe di bit oltre che su stringhe di caratteri: length, bit_length, octet_length, position, substring.

Le seguenti funzioni lavorano su stringhe di bit oltre che su stringhe binarie: get_bit, set_bit. Quando si lavora con stringhe di bit, queste funzioni numerano il primo bit (più a sinistra) della stringa come il bit 0.

In aggiunta, è possibile convertire valori interi a, o da, tipi bit. Alcuni esempi:

44::bit(10)                    0000101100
44::bit(3)                     100
cast(-44 as bit(12))           111111010100
'1110'::bit(4)::integer        14

Notare che la conversione ad un solo «bit» significa convertire al bit(1), per cui verrà coinvolto solo il bit meno significativo dell'intero.

[Nota]

Nota

Prima di PostgreSQL™ 8.0, la conversione da intero a bit(n) lavorava copiando gli n bit più a sinistra dell'intero, mentre adesso copia gli n bit più a destra. Inoltre, convertendo esplicitamente un intero ad una stringa di bit di larghezza maggiore dell'intero stesso, il segno si estenderà sulla sinistra.

Documentazione di PostgreSQL 9.0 > Il linguaggio SQL > Funzioni e Operatori > Funzioni e operatori per stringhe di bit
PrecedenteFunzioni e operatori per stringhe binarieConfronto con modelliSuccessivo