No MySQL, você pode usar o
ASCII()
função para retornar o código ASCII para um determinado caractere. Mais especificamente, ele retorna o código ASCII para o caractere mais à esquerda em uma determinada string. Você também pode usar
ORD()
, que funciona da mesma maneira, exceto que também é compatível com caracteres multibyte. Sintaxe
Aqui está a sintaxe para o
ASCII()
função:ASCII(str)
Onde
str
é a string da qual você deseja o código ASCII do caractere mais à esquerda. Exemplo
Aqui está um exemplo:
SELECT ASCII('Z');
Resultado:
+------------+ | ASCII('Z') | +------------+ | 90 | +------------+
Assim, podemos ver neste exemplo que a letra maiúscula
Z
tem um código ASCII de 90. Observe que há um código ASCII diferente para letras maiúsculas e minúsculas. Então, para obter o código ASCII para o
z
minúsculo , precisaríamos fornecer as letras minúsculas z
como argumento:SELECT ASCII('z');
Resultado:
+------------+ | ASCII('z') | +------------+ | 122 | +------------+
E como mencionado, apenas o caractere mais à esquerda é retornado:
SELECT ASCII('Zz');
Resultado:
+-------------+ | ASCII('Zz') | +-------------+ | 90 | +-------------+
Uma alternativa:a função ORD()
Você também pode usar o
ORD()
função para retornar o valor ASCII de um caractere. SELECT ORD('Z');
Resultado:
+----------+ | ORD('Z') | +----------+ | 90 | +----------+
A diferença entre
ASCII()
e ORD()
é isso, ORD()
também pode retornar valores para caracteres multibyte, enquanto ASCII()
é limitado apenas ao intervalo ASCII.