sql >> データベース >  >> RDS >> Mysql

MySQLでのOCT()関数のしくみ

    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

    1. NoSQL:スキーマのない生活

    2. SQLで列の最小値を見つける方法

    3. DBMS_SCHEDULERジョブは1時間ごとに実行する例

    4. SYSが所有するオブジェクトにトリガーを作成できないのはなぜですか?