I MySQL kan du använda ASCII()
funktion för att returnera ASCII-koden för ett givet tecken. Mer specifikt returnerar den ASCII-koden för tecknet längst till vänster i en given sträng.
Du kan också använda ORD()
, vilket fungerar på samma sätt, förutom att det också stöder multibyte-tecken.
Syntax
Här är syntaxen för ASCII()
funktion:
ASCII(str)
Där str
är strängen som du vill ha ASCII-koden för tecknet längst till vänster från.
Exempel
Här är ett exempel:
SELECT ASCII('Z');
Resultat:
+------------+ | ASCII('Z') | +------------+ | 90 | +------------+
Så vi kan se från detta exempel att den stora bokstaven Z
har en ASCII-kod på 90.
Observera att det finns en annan ASCII-kod för stora bokstäver kontra gemener. Så för att få ASCII-koden för gemener z
, skulle vi behöva tillhandahålla gemener z
som argument:
SELECT ASCII('z');
Resultat:
+------------+ | ASCII('z') | +------------+ | 122 | +------------+
Och som nämnts returneras endast det tecknet längst till vänster:
SELECT ASCII('Zz');
Resultat:
+-------------+ | ASCII('Zz') | +-------------+ | 90 | +-------------+
Ett alternativ:ORD()-funktionen
Du kan också använda ORD()
funktion för att returnera ASCII-värdet för ett tecken.
SELECT ORD('Z');
Resultat:
+----------+ | ORD('Z') | +----------+ | 90 | +----------+
Skillnaden mellan ASCII()
och ORD()
är det, ORD()
kan också returnera värden för multibyte-tecken medan ASCII()
är begränsad till bara ASCII-intervallet.