In MariaDB ASCII()
ist eine eingebaute String-Funktion, die den numerischen ASCII-Wert des Zeichens ganz links ihres String-Arguments zurückgibt.
Das ASCII()
Funktion funktioniert nur mit 8-Bit-Zeichen. Um den Code für Multibyte-Zeichen zu erhalten, verwenden Sie ORD()
stattdessen funktionieren.
Syntax
Die Syntax lautet wie folgt:
ASCII(str)
Wobei str
ist das String-Argument.
ASCII()
gibt nur den numerischen ASCII-Wert von ganz links zurück Zeichen dieser Zeichenfolge.
Beispiel
Hier ist ein einfaches Beispiel zur Veranschaulichung:
SELECT ASCII('Maria');
Ergebnis:
+----------------+| ASCII('Maria') |+----------------+| 77 |+----------------+
Dies sagt uns, dass der Großbuchstabe M
hat den numerischen ASCII-Wert 77
.
Wie erwähnt, ASCII()
gibt nur den ASCII-Wert von ganz links zurück Charakter. Daher führt Folgendes zum selben Ergebnis:
SELECT ASCII('M');
Ergebnis:
+------------+| ASCII('M') |+------------+| 77 |+------------+
Um dies weiter zu demonstrieren, lassen Sie uns den numerischen ASCII-Wert aus jedem Buchstaben in der obigen Zeichenfolge abrufen:
SELECT
ASCII('M'),
ASCII('a'),
ASCII('r'),
ASCII('i'),
ASCII('a');
Ergebnis:
+------------+------------+------------+------- -----+------------+| ASCII('M') | ASCII('a') | ASCII('r') | ASCII('i') | ASCII('a') |+-----------+-----------+------------+--- ---------+------------+| 77 | 97 | 114 | 105 | 97 |+------------+------------+------------+-------- ----+------------+
Groß-/Kleinschreibung
Großbuchstaben haben einen anderen ASCII-Wert als ihre Kleinbuchstaben.
Beispiel:
SELECT
ASCII('M'),
ASCII('m');
Ergebnis:
+------------+------------+| ASCII('M') | ASCII('m') |+-----------+------------+| 77 | 109 |+------------+------------+
Ein Datenbankbeispiel
Hier ist ein Beispiel für die Verwendung von ASCII()
in einer Datenbankabfrage:
USE PetHouse;
SELECT
PetName,
ASCII(PetName) AS 'ASCII value of leftmost character'
FROM Pets;
Ergebnis:
+---------+-----------------------------------+ | Haustiername | ASCII-Wert des Zeichens ganz links |+---------+--------------------------------- --+| Flauschig | 70 || Holen | 70 || Kratzer | 83 || Wackeln | 87 || Twittern | 84 || Flauschig | 70 || Rinde | 66 || Miau | 77 |+---------+-----------------------------------+
Zeichen ganz rechts
Hier verwende ich das RIGHT()
Funktion, um das Zeichen ganz rechts von jedem Tiernamen zurückzugeben, und verwenden Sie es dann erneut mit ASCII()
Funktion, um den ASCII-Wert für dieses Zeichen zurückzugeben.
USE PetHouse;
SELECT
PetName,
RIGHT(PetName, 1) 'Rightmost character',
ASCII(RIGHT(PetName, 1)) 'ASCII code'
FROM Pets;
Ergebnis:
+---------+---------------------+------------+| Haustiername | Zeichen ganz rechts | ASCII-Code |+---------+---------------------+------------+| Flauschig | y | 121 || Holen | h | 104 || Kratzer | h | 104 || Wackeln | g | 103 || Twittern | t | 116 || Flauschig | y | 121 || Rinde | k | 107 || Miau | w | 119 |+---------+---------------------+------------+Leere Zeichenfolgen
Die Bereitstellung einer leeren Zeichenfolge führt zu
0
zurückgegeben.SELECT ASCII('');
Ergebnis:
+-----------+| ASCII('') |+-----------+| 0 |+-----------+Nullwerte
Bereitstellung von
null
ergibtnull
zurückgegeben.SELECT ASCII(null);
Ergebnis:
+-------------+| ASCII(Null) |+------------+| NULL |+-------------+