MariaDB
 sql >> Datenbank >  >> RDS >> MariaDB

Wie ASCII() in MariaDB funktioniert

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 ergibt null zurückgegeben.

SELECT ASCII(null); 

Ergebnis:

+-------------+| ASCII(Null) |+------------+| NULL |+-------------+