Jeux de caractères et Unicode
<<<
Chaînes résultats CONVERT()
>>>

11.4 Opérations affectées par le support de jeux de caractères.
11 Jeux de caractères et Unicode
 Manuel de Référence MySQL 4.1 : Version Française

->Chaînes résultats
CONVERT()
CAST()
Commande SHOW

11.4.1 Chaînes résultats

MySQL a de nombreux opérateurs et fonctions qui retournent une chaîne. Cette section répond à la question : quels sont le jeu de caractères et la collation d'une telle chaîne?

Pour des fonctions simples qui prennent une chaîne en entrée et renvoient une chaîne comme résultat en sortie, le jeu de caractères du résultat et sa collation sont les mêmes que deux de l'argument principal. Par exemple, UPPER(X) renvoie une chaîne dont la chaîne de caractères et la collation sont les mêmes que celles de X .

Le même concept s'applique à : INSTR() , LCASE() , LOWER() , LTRIM() , MID() , REPEAT() , REPLACE() , REVERSE() , RIGHT() , RPAD() , RTRIM() , SOUNDEX() , SUBSTRING() , TRIM() , UCASE() , UPPER() . Veuillez aussi noter que la fonction REPLACE() , contrairement à toutes les autres fonctions, ignore la collation de la chaîne d'entrée et effectue une comparaison insensible à la casse à chaque fois.

Pour des opérations qui combinent des entrées de chaînes multiples et renvoient une chaîne seule en sortie, les "règles d'agrégation" du standard SQL99 s'appliquent. Les règles sont :

  • Si COLLATE X est explicitement donné, alors on utilise X .
  • Si COLLATE X et COLLATE Y sont explicitement donnés, alors erreur.
  • Sinon, si toutes les collations sont la même collation X , alors utilise X .
  • Sinon, le résultat n'a pas de collation.
Par exemple, avec CASE ... WHEN a THEN b WHEN b THEN c COLLATE X END , la collation résultante est X . L'exemple s'applique à : CONCAT() , GREATEST() , IF() , LEAST() , CASE , UNION , || , ELT() .

Pour des opérations qui convertissent vers des données caractères, le jeu de caractères de la chaîne résultante et sa collation sont dans le jeu de caractères de connexion et ont la collation de connexion .

Ceci s'applique à : CHAR() , CAST() , CONV() , FORMAT() . HEX() , SPACE() .

<< Chaînes résultats >>
Jeux de caractères et Unicode Opérations affectées par le support de jeux de caractères. CONVERT()