MySQLでは、OCT()
関数は、10進数から8進数に変換するために使用されます。
より正確には、引数の8進値の文字列表現を返します。
構文
基本的な構文は次のようになります:
OCT(N)
ここでn
変換される値です。この引数は長い(BIGINT)数値です。
例1-基本的な使用法
仕組みの例を次に示します。
SELECT OCT(8);
結果:
+--------+ | OCT(8) | +--------+ | 10 | +--------+
結果は10
です これは、10進法の8に相当する8進数であるためです。
例2–さまざまな値
さまざまな値を持つ別の例を次に示します。
SELECT OCT(10), OCT(20), OCT(30), OCT(100), OCT(1000);
結果:
+---------+---------+---------+----------+-----------+ | OCT(10) | OCT(20) | OCT(30) | OCT(100) | OCT(1000) | +---------+---------+---------+----------+-----------+ | 12 | 24 | 36 | 144 | 1750 | +---------+---------+---------+----------+-----------+
例3–式
以下のような表現を使用することもできます:
SELECT OCT(100 + 2), OCT(100 * 2), OCT(100 / 2), OCT(100 - 2);
結果:
+--------------+--------------+--------------+--------------+ | OCT(100 + 2) | OCT(100 * 2) | OCT(100 / 2) | OCT(100 - 2) | +--------------+--------------+--------------+--------------+ | 146 | 310 | 62 | 142 | +--------------+--------------+--------------+--------------+
オクタルとは何ですか?
8進数は、8をベースとする数値表記のシステムです。これは、10をベースとする10進数とは対照的です。
10進数では、9までカウントし、最初の桁の後にゼロを追加することからやり直します(たとえば、9が10になると、1にゼロが追加されます)。
ただし、8進数(基数8)では、7までカウントしてから、最初からゼロを追加します。したがって、8進数の10は、10進数の8に相当します。
デモンストレーション用の表は次のとおりです。
10進数(基数10) | 8進数(基数8) |
---|---|
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 10 |
9 | 11 |
10 | 12 |
11 | 13 |
12 | 14 |
13 | 15 |
14 | 16 |
15 | 17 |
16 | 20 |
17 | 21 |
18 | 22 |
19 | 23 |
20 | 24 |