MariaDBでは、ASCII()
文字列引数の左端の文字のASCII数値を返す組み込みの文字列関数です。
ASCII()
関数は8ビット文字でのみ機能します。マルチバイト文字のコードを取得するには、ORD()
を使用します 代わりに機能します。
構文
構文は次のようになります:
ASCII(str)
str
文字列引数です。
ASCII()
左端のみのASCII数値を返します この文字列の文字。
例
簡単な例を次に示します。
SELECT ASCII('Maria');
結果:
+----------------+ | ASCII('Maria') | +----------------+ | 77 | +----------------+
これは、大文字のM
であることを示しています。 77
のASCII数値を持っています 。
前述のように、ASCII()
左端のASCII値のみを返します キャラクター。したがって、以下でも同じ結果が得られます。
SELECT ASCII('M');
結果:
+------------+ | ASCII('M') | +------------+ | 77 | +------------+
これをさらに実証するために、上記の文字列の各文字から数値ASCII値を取得しましょう:
SELECT
ASCII('M'),
ASCII('a'),
ASCII('r'),
ASCII('i'),
ASCII('a');
結果:
+------------+------------+------------+------------+------------+ | ASCII('M') | ASCII('a') | ASCII('r') | ASCII('i') | ASCII('a') | +------------+------------+------------+------------+------------+ | 77 | 97 | 114 | 105 | 97 | +------------+------------+------------+------------+------------+
大文字と小文字の区別
大文字のASCII値は、同等の小文字とは異なります。
例:
SELECT
ASCII('M'),
ASCII('m');
結果:
+------------+------------+ | ASCII('M') | ASCII('m') | +------------+------------+ | 77 | 109 | +------------+------------+
データベースの例
ASCII()
の使用例を次に示します。 データベースクエリの場合:
USE PetHouse;
SELECT
PetName,
ASCII(PetName) AS 'ASCII value of leftmost character'
FROM Pets;
結果:
+---------+-----------------------------------+ | PetName | ASCII value of leftmost character | +---------+-----------------------------------+ | Fluffy | 70 | | Fetch | 70 | | Scratch | 83 | | Wag | 87 | | Tweet | 84 | | Fluffy | 70 | | Bark | 66 | | Meow | 77 | +---------+-----------------------------------+
右端の文字
ここでは、RIGHT()
を使用します 各ペット名から右端の文字を返し、それをASCII()
で再度使用する関数 その文字のASCII値を返す関数。
USE PetHouse;
SELECT
PetName,
RIGHT(PetName, 1) 'Rightmost character',
ASCII(RIGHT(PetName, 1)) 'ASCII code'
FROM Pets;
結果:
+---------+---------------------+------------+ | PetName | Rightmost character | ASCII code | +---------+---------------------+------------+ | Fluffy | y | 121 | | Fetch | h | 104 | | Scratch | h | 104 | | Wag | g | 103 | | Tweet | t | 116 | | Fluffy | y | 121 | | Bark | k | 107 | | Meow | w | 119 | +---------+---------------------+------------+
空の文字列
空の文字列を指定すると、0
になります 返送されます。
SELECT ASCII('');
結果:
+-----------+ | ASCII('') | +-----------+ | 0 | +-----------+
ヌル値
null
を提供する 結果はnull
返送されます。
SELECT ASCII(null);
結果:
+-------------+ | ASCII(null) | +-------------+ | NULL | +-------------+