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

MySQLでUnicode文字コードをクエリする方法:CHAR()関数で文字に変換する手順

MySQLでは、16進数で表現されたUnicode文字コード(コードポイント)をそのまま値として格納し、CHAR()関数を使うことで対応する文字に変換できます。この記事では、実際にテーブルを作成し、16進数の文字コードから文字を取得するまでの手順をわかりやすく解説します。

1. テーブルの作成

まず、サンプル用のテーブルを作成します。

mysql> create table DemoTable
    -> (
    -> Value int
    -> );
Query OK, 0 rows affected (0.57 sec)

ここでは、整数値を格納するための「Value」というINT型カラムを持つテーブル「DemoTable」を作成しました。

2. レコードの挿入

次に、INSERTコマンドを使って、16進数形式のUnicode文字コードをレコードとして挿入します。

mysql> insert into DemoTable values(0x41);
Query OK, 1 row affected (0.12 sec)

mysql> insert into DemoTable values(0x30);
Query OK, 1 row affected (0.13 sec)

mysql> insert into DemoTable values(0x61);
Query OK, 1 row affected (0.27 sec)

挿入した値の意味は次のとおりです。

  • 0x41 … 「A」に対応する文字コード
  • 0x30 … 「0」に対応する文字コード
  • 0x61 … 「a」に対応する文字コード

3. レコードの確認

SELECT文を使って、テーブル内のすべてのレコードを表示してみましょう。

mysql> select *from DemoTable;

出力結果

上記のクエリを実行すると、次のような出力が得られます。

+-------+
| Value |
+-------+
|    65 |
|    48 |
|    97 |
+-------+
3 rows in set (0.00 sec)

16進数で挿入した値は、10進数(65、48、97)に変換されて格納されていることが確認できます。

4. 文字コードを文字に変換する

格納したUnicode文字コードを実際の文字に変換するには、CHAR()関数を使用します。以下のクエリを実行してください。

mysql> select char(Value) from DemoTable;

出力結果

実行結果は次のとおりです。

+-------------+
| char(Value) |
+-------------+
| A           |
| 0           |
| a           |
+-------------+
3 rows in set (0.00 sec)

各数値が対応する文字(A、0、a)に正しく変換されていることがわかります。

まとめ

MySQLでは、16進数のUnicode文字コードをINT型カラムに格納し、CHAR()関数を使うことで簡単に対応する文字へ変換できます。文字コードと文字の相互変換が必要なデータ処理やデバッグの場面で、ぜひ活用してみてください。

  1. MySQLで日付付きの行を挿入する方法:DATE型カラムへのデータ登録手順

    MySQLで日付付きの行を挿入するには MySQLでは、DATE型のカラムに対して「YYYY-MM-DD」形式の日付文字列を指定することで、簡単に日付付きの行を挿入できます。ここでは、従業員情報を管理するテーブルを例に、テーブル作成からデータ挿入、確認までの一連の手順を解説します。 1. テーブルを作成する まず、CREATE TABLE文を使ってサンプル用のテーブルを作成します。EmployeeIdは自動採番(AUTO_INCREMENT)の主キーとし、入社日を格納するJoiningDateカラムにはDATE型を指定します。 mysql> create table DemoTable

  2. MySQLでSELECTクエリを使用してデータを挿入(INSERT)する方法

    MySQLでは、INSERT文とSELECTクエリを組み合わせることで、テーブルにデータを挿入することができます。通常、SELECTは既存のテーブルからデータを取得するために使われますが、値を直接指定してINSERTを実行する際にも活用できる便利な手法です。基本構文SELECTクエリを使用してINSERTを実行する場合の構文は以下の通りです。insert into yourTableName(yourColumnName1,yourColumnName2,yourColumnName3,...N) select yourValue1,yourValue2,yourValue3,......N;