Dans MySQL, vous pouvez utiliser le ASCII() fonction pour retourner le code ASCII pour un caractère donné. Plus précisément, il renvoie le code ASCII du caractère le plus à gauche dans une chaîne donnée.
Vous pouvez également utiliser ORD() , qui fonctionne de la même manière, sauf qu'il prend également en charge les caractères multioctets.
Syntaxe
Voici la syntaxe pour le ASCII() fonction :
ASCII(str)
Où str est la chaîne dont vous souhaitez obtenir le code ASCII du caractère le plus à gauche.
Exemple
Voici un exemple :
SELECT ASCII('Z'); Résultat :
+------------+
| ASCII('Z') |
+------------+
| 90 |
+------------+
Nous pouvons donc voir sur cet exemple que la lettre majuscule Z a un code ASCII de 90.
Notez qu'il existe un code ASCII différent pour les lettres majuscules et minuscules. Donc, pour obtenir le code ASCII pour le z minuscule , nous aurions besoin de fournir le z minuscule comme argument :
SELECT ASCII('z'); Résultat :
+------------+
| ASCII('z') |
+------------+
| 122 |
+------------+ Et comme mentionné, seul le caractère le plus à gauche est renvoyé :
SELECT ASCII('Zz'); Résultat :
+-------------+
| ASCII('Zz') |
+-------------+
| 90 |
+-------------+ Une alternative :la fonction ORD()
Vous pouvez également utiliser le ORD() fonction pour renvoyer la valeur ASCII d'un caractère.
SELECT ORD('Z'); Résultat :
+----------+
| ORD('Z') |
+----------+
| 90 |
+----------+
La différence entre ASCII() et ORD() est-ce, ORD() peut également renvoyer des valeurs pour les caractères multi-octets alors que ASCII() est limité à la plage ASCII uniquement.