MySQLを使用する場合は、CONV()
を使用できます。 ある基数から別の基数に数値を変換する関数。 3つの引数が必要です。変換する数値、元のベース、および変換するベース。
構文
公式の構文は次のとおりです。
CONV(N,from_base,to_base)
from_base
の場所 は元のベースであり、to_base
数値を変換するベースです。
例–10進数から2進数
数値を基数10(10進数)から基数2(2進数)に変換する例を次に示します。
SELECT CONV(3, 10, 2);
結果:
+----------------+ | CONV(3, 10, 2) | +----------------+ | 11 | +----------------+
つまり、3
10進数で11
に変換されます バイナリで。
バイナリの場合、MySQLにはBIN()
もあります 10進数から2進数に変換できる関数。したがって、上記の例は次の例と同等です。
SELECT BIN(3);
結果:
+--------+ | BIN(3) | +--------+ | 11 | +--------+
例–2進化10進数
ただし、CONV()
の利点の1つ 機能は、逆に変換することもできるということです。したがって、上記の例を切り替えて、2進数から10進数に変換できます。
SELECT CONV(11, 2, 10);
結果:
+-----------------+ | CONV(11, 2, 10) | +-----------------+ | 3 | +-----------------+
例–10進数から16進数
この例では、10進数から16進数に変換します。
SELECT CONV(13, 10, 16);
結果:
+------------------+ | CONV(13, 10, 16) | +------------------+ | D | +------------------+
ここに示されているように、13
基数10(10進数)はD
に変換されます 基数16(16進数)。
別の例を次に示します。今回はより大きな数を使用します:
SELECT CONV(12734, 10, 16);
結果:
+---------------------+ | CONV(12734, 10, 16) | +---------------------+ | 31BE | +---------------------+
BIN()
に似ています バイナリ変換用の関数であるMySQLには、HEX()
もあります。 数値を10進数から16進数に変換する関数。したがって、前の例は次のように書き直すことができます。
SELECT HEX(12734);
結果:
+------------+ | HEX(12734) | +------------+ | 31BE | +------------+
例–ベース36
CONV()
関数は、最小基数2(バイナリ)と最大基数36を受け入れます。基数10から基数36に変換する例を次に示します。
SELECT CONV(12734, 10, 36);
結果:
+---------------------+ | CONV(12734, 10, 36) | +---------------------+ | 9TQ | +---------------------+