Documentation PostgreSQL 9.2.24 > Langage SQL > Fonctions et opérateurs > Fonctions et opérateurs de chaînes binaires
PrécédentFonctions et opérateurs de chaînes Fonctions et opérateurs sur les chaînes de bitsSuivant

9.5. Fonctions et opérateurs de chaînes binaires

Cette section décrit les fonctions et opérateurs d'examen et de manipulation des valeurs de type bytea.

SQL définit quelques fonctions de chaînes qui utilise des mots clés qui sont employés à la place de virgules pour séparer les arguments. Les détails sont présentés dans Tableau 9.9, « Fonctions et opérateurs SQL pour chaînes binaires ». PostgreSQLTM fournit aussi des versions de ces fonctions qui utilisant la syntaxe standard de l'appel de fonction (voir le Tableau 9.10, « Autres fonctions sur les chaînes binaires »).

[Note]

Note

Les résultats en exemple montrés ici supposent que le paramètre serveur bytea_output est configuré à escape (le format traditionel de PostgreSQL).

Tableau 9.9. Fonctions et opérateurs SQL pour chaînes binaires

Fonction Type renvoyé Description Exemple Résultat
chaîne || chaîne bytea Concaténation de chaîne E'\\\\Post'::bytea || E'\047円gres\000円'::bytea \\Post'gres000円
octet_length(chaîne) int Nombre d'octets d'une chaîne binaire octet_length( E'jo\000円se'::bytea) 5
overlay(chaîne placing chaîne from int [for int]) bytea Remplace une sous-chaîne overlay(E'Th\000円omas'::bytea placing E'\002円\003円'::bytea from 2 for 3) T\002円\003円mas
position(sous-chaîne in chaîne) int Emplacement de la sous-chaîne indiquée position( E'\000円om'::bytea in E'Th\000円omas'::bytea) 3
substring(chaîne [from int] [for int]) bytea Extrait la sous-chaîne substring(E'Th\000円omas'::bytea from 2 for 3) h000円o
trim([both] octets from chaîne) bytea Supprime la plus longue chaîne composée uniquement des octets apparaissant dans octets à partir du début et de la fin de chaîne trim(E'\000円\001円'::bytea from E'\000円Tom\001円'::bytea) Tom

Des fonctions supplémentaires de manipulations de chaînes binaires sont listées dans le Tableau 9.10, « Autres fonctions sur les chaînes binaires ». Certaines sont utilisées en interne pour coder les fonctions de chaînes suivant le standard SQL et sont listées dans le Tableau 9.9, « Fonctions et opérateurs SQL pour chaînes binaires ».

Tableau 9.10. Autres fonctions sur les chaînes binaires

Fonction Type retourné Description Exemple Résultat
btrim(chaîne bytea, octets bytea) bytea Supprime la plus longue chaîne constituée uniquement des octets apparaissant dans octets à partir du début et de la fin de chaîne. btrim(E'\000円trim\001円'::bytea, E'\000円\001円'::bytea) trim
decode(chaîne text, format text) bytea Décode les données binaires de leur représentation textuelle dans chaîne auparavant codée. Les options pour format sont les mêmes que pour encode. decode(E'123\000456円', 'escape') 123000456円
encode(chaîne bytea, type text) text Code les données binaires en une représentation textuelle. Les formats supportés sont : base64, hex, escape. escape convertit les octets nuls et les octets dont le bit de poids fort est à 1, en séquence octal (\nnn) et des antislashs doubles. encode(E'123\000456円'::bytea, 'escape') 123000456円
get_bit(chaîne, offset) int Extrait un bit d'une chaîne get_bit(E'Th\000円omas'::bytea, 45) 1
get_byte(chaîne, offset) int Extrait un octet d'une chaîne get_byte(E'Th\000円omas'::bytea, 4) 109
length(chaîne) int Longueur de la chaîne binaire length(E'jo\000円se'::bytea) 5
md5(chaîne) text Calcule le hachage MD5 de la chaîne et retourne le résultat en hexadécimal md5(E'Th\000円omas'::bytea) 8ab2d3c9689aaf18 b4958c334c82d8b1
set_bit(chaîne, offset, newvalue) bytea Positionne un bit dans une chaîne set_bit(E'Th\000円omas'::bytea, 45, 0) Th000円omAs
set_byte(chaîne, offset, newvalue) bytea Positionne un octet dans une chaîne set_byte(E'Th\000円omas'::bytea, 4, 64) Th000円o@as

get_byte et set_byte prennent en compte le premier octet d'une chaîne binaire comme l'octet numéro zéro. get_bit et set_bit comptent les bits à partir de la droite pour chaque octet. Par exemple, le bit 0 est le bit le moins significatif du premier octet et le bit 15 est le bit le plus significatif du second octet.

Voir aussi la fonction d'agrégat string_agg dans Section 9.20, « Fonctions d'agrégat ».

AltStyle によって変換されたページ (->オリジナル) /