MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLで特定の文字のASCIIコード(番号)を取得するには?ASCII()関数の使い方

ASCII()関数とは

MySQLの文字列関数 ASCII() を使うと、指定した文字のASCII数値コードを取得できます。

構文

ASCII(str)

引数 str には、先頭文字のASCII値を取得したい文字列を指定します。

ここで重要なポイントとして、ASCII() 関数が返すのは、引数として渡された文字列の最も左側の文字(最初の1文字)の番号コードです。文字列全体ではなく、あくまで先頭の1文字だけが評価される点に注意しましょう。

使用例

mysql> SELECT ASCII('A') AS '大文字AのASCII値';
+--------------------------+
| 大文字AのASCII値         |
+--------------------------+
| 65                       |
+--------------------------+
1 row in set (0.00 sec)

mysql> SELECT ASCII('a') AS '小文字aのASCII値';
+--------------------------+
| 小文字aのASCII値         |
+--------------------------+
| 97                       |
+--------------------------+
1 row in set (0.00 sec)

mysql> SELECT ASCII('Abhay') AS '先頭文字のASCII値';
+---------------------------------+
| 先頭文字のASCII値               |
+---------------------------------+
| 65                              |
+---------------------------------+
1 row in set (0.00 sec)

実行結果の解説

上記の例から、以下のことが確認できます。

  • 大文字の 'A' に対しては 65 が返される
  • 小文字の 'a' に対しては 97 が返される
  • 文字列 'Abhay' を渡した場合も、先頭文字 'A' に対応する 65 が返される

大文字と小文字では異なるASCIIコードが割り当てられているため、英字の大小を区別して処理したい場合にも ASCII() 関数は役立ちます。

補足:空文字列を渡した場合

引数に空文字列 '' を指定すると、ASCII() 関数は 0 を返します。NULLを渡した場合は NULL が返されるため、実務で利用する際は入力値の扱いに注意してください。

  1. MySQLの列に特定の単語(値)が出現する回数を取得する方法【COUNT()関数】

    はじめにMySQLである特定の単語や値が、テーブルの列に何回出現するかを調べたい場合があります。たとえば「同じ名前の従業員が何人登録されているか」を確認したいときなどです。このような場合には、COUNT()関数を使用します。本記事では、サンプルテーブルを作成し、実際に特定の値の出現回数を取得する手順を解説します。1. サンプルテーブルの作成まず、以下のようにテーブルを作成します。mysql> create table DemoTable -> ( -> EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -

  2. MySQLでCHAR()関数の逆の処理を行う方法|ASCII()とORD()の違いを解説

    MySQLにおいて、CHAR()関数の逆の働きをするのは ASCII() 関数と ORD() 関数です。CHAR() は数値(文字コード)を文字に変換する関数ですが、ASCII() は引数の文字列の左端の文字に対応する数値(ASCIIコード)を返し、ORD() は左端の文字の文字コードを返します。 ASCII()とORD()の違い どちらも文字から数値への変換を行う点は共通していますが、以下のような違いがあります。 ASCII():シングルバイト文字専用。マルチバイト文字を渡すと警告が出て64を返します。 ORD():マルチバイト文字にも対応しており、最初のバイトの値に基づいて計算された文字