Dans MariaDB, ASCII() est une fonction de chaîne intégrée qui renvoie la valeur ASCII numérique du caractère le plus à gauche de son argument de chaîne.
Le ASCII() la fonction ne fonctionne que sur les caractères 8 bits. Pour obtenir le code des caractères multi-octets, utilisez le ORD() fonction à la place.
Syntaxe
La syntaxe ressemble à ceci :
ASCII(str)
Où str est l'argument de la chaîne.
ASCII() renverra la valeur numérique ASCII de seulement le plus à gauche caractère de cette chaîne.
Exemple
Voici un exemple simple pour illustrer :
SELECT ASCII('Maria'); Résultat :
+----------------+| ASCII('Marie') |+----------------+| 77 |+----------------+
Cela nous indique que la lettre majuscule M a la valeur numérique ASCII de 77 .
Comme mentionné, ASCII() ne renvoie que la valeur ASCII de le plus à gauche personnage. Par conséquent, ce qui suit produit le même résultat :
SELECT ASCII('M'); Résultat :
+------------+| ASCII('M') |+------------+| 77 |+------------+ Pour illustrer cela davantage, récupérons la valeur numérique ASCII de chaque lettre de la chaîne ci-dessus :
SELECT
ASCII('M'),
ASCII('a'),
ASCII('r'),
ASCII('i'),
ASCII('a'); Résultat :
+------------+------------+------------+------- -----+------------+| ASCII('M') | ASCII('a') | ASCII('r') | ASCII('i') | ASCII('a') |+------------+------------+------------+--- ---------+------------+| 77 | 97 | 114 | 105 | 97 |+------------+------------+------------+-------- ----+------------+ Sensibilité à la casse
Les lettres majuscules ont une valeur ASCII différente de leurs équivalents minuscules.
Exemple :
SELECT
ASCII('M'),
ASCII('m'); Résultat :
+------------+------------+| ASCII('M') | ASCII('m') |+------------+------------+| 77 | 109 |+------------+------------+ Un exemple de base de données
Voici un exemple d'utilisation de ASCII() dans une requête de base de données :
USE PetHouse;
SELECT
PetName,
ASCII(PetName) AS 'ASCII value of leftmost character'
FROM Pets; Résultat :
+---------+-----------------------------------+ | NomAnimal | Valeur ASCII du caractère le plus à gauche |+--------+--------------------------------- --+| Moelleux | 70 || Récupérer | 70 || gratter | 83 || remuer | 87 || Tweeter | 84 || Moelleux | 70 || Écorce | 66 || Miaou | 77 |+---------+-----------------------------------+Caractère le plus à droite
Ici, j'utilise le
RIGHT()fonction pour renvoyer le caractère le plus à droite de chaque nom d'animal, puis l'utiliser à nouveau avec leASCII()fonction pour renvoyer la valeur ASCII pour ce caractère.USE PetHouse; SELECT PetName, RIGHT(PetName, 1) 'Rightmost character', ASCII(RIGHT(PetName, 1)) 'ASCII code' FROM Pets;Résultat :
+---------+---------------------+------------+| NomAnimal | Caractère le plus à droite | Code ASCII |+---------+---------------------+------------+| Moelleux | y | 121 || Récupérer | h | 104 || gratter | h | 104 || remuer | g | 103 || Tweeter | t | 116 || Moelleux | y | 121 || Écorce | k | 107 || Miaou | w | 119 |+---------+---------------------+------------+Chaînes vides
Fournir une chaîne vide donne
0être retourné.SELECT ASCII('');Résultat :
+-----------+| ASCII('') |+-----------+| 0 |+-----------+Valeurs nulles
Fournir
nulldonnenullêtre retourné.SELECT ASCII(null);Résultat :
+-------------+| ASCII(null) |+-------------+| NULL |+-------------+