Documentation PostgreSQL 8.0.25 | ||||
---|---|---|---|---|
Pr�c�dent | Arri�re rapide | Chapitre 9. Fonctions et op�rateurs | Avance rapide | Suivant |
Cette section d�crit les fonctions et op�rateurs pour examiner et manipuler les cha�nes de bits, qui sont des valeurs du type bit et bit varying. En dehors des op�rateurs de comparaison habituels, les op�rateurs montr�s dans Tableau 9-10 peuvent �tre utilis�s. Les op�randes de cha�nes de bits &, | et # doivent �tre de m�me longueur. Lors d'un d�calage de bits, la longueur originale de la cha�ne est pr�serv�e comme le montre les exemples.
Tableau 9-10. Op�rateurs sur les cha�nes de bits
Op�rateur | Description | Exemple | R�sultat |
---|---|---|---|
|| | concat�nation | B'10001' || B'011' | 10001011 |
& | AND bit � bit | B'10001' & B'01101' | 00001 |
| | OR bit � bit | B'10001' | B'01101' | 11101 |
# | XOR bit � bit | B'10001' # B'01101' | 11100 |
~ | NOT bit � bit | ~ B'10001' | 01110 |
<< | d�calage gauche bit � bit | B'10001' << 3 | 01000 |
>> | d�calage droit bit � bit | B'10001' >> 2 | 00100 |
Les fonctions SQL suivantes fonctionnent sur les
cha�nes de bits ainsi que sur les cha�nes de caract�res :
length
,
bit_length
,
octet_length
,
position
,
substring
.
De plus, il est possible de convertir des valeurs int�grales en ou � partir du type bit. Quelque exemples :
44::bit(10) 0000101100 44::bit(3) 100 cast(-44 as bit(12)) 111111010100 '1110'::bit(4)::integer 14
Notez que la conversion de <<�bit�>> signifie la conversion de bit(1) et, du coup, il d�livrera seulement le bit de poids faible de l'entier.
Note�: Avant PostgreSQL 8.0, convertir une entier en bit(n) aurait copi� les n bits les plus � gauche de l'entier alors que, maintenant, il copie les n bits les plus � droite. De plus, convertir un entier en une cha�ne de bits d'une largeur plus grande que l'entier lui-m�me changera le signe c�t� gauche.
Pr�c�dent | Sommaire | Suivant |
Fonctions et op�rateurs de cha�nes binaires | Niveau sup�rieur | Correspondance de mod�les |