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

MariaDBでのLOG2()のしくみ

    MariaDBでは、LOG2() は、引数の2を底とする対数を返す組み込み関数です。

    構文

    構文は次のようになります:

    LOG2(X)

    ここでX 2を底とする対数を返す値です。

    デモンストレーションの例を次に示します。

    SELECT LOG2(3);

    結果:

    +--------------------+
    | LOG2(3)            |
    +--------------------+
    | 1.5849625007211563 |
    +--------------------+

    さらにいくつかあります:

    SELECT 
        LOG2(2),
        LOG2(4),
        LOG2(8),
        LOG2(16);

    結果:

    +---------+---------+---------+----------+
    | LOG2(2) | LOG2(4) | LOG2(8) | LOG2(16) |
    +---------+---------+---------+----------+
    |       1 |       2 |       3 |        4 |
    +---------+---------+---------+----------+

    引数の範囲

    Xの場合 0以下 、次にNULL 警告とともに返されます。

    SELECT 
        LOG2(0),
        LOG2(-1);

    結果:

    +---------+----------+
    | LOG2(0) | LOG2(-1) |
    +---------+----------+
    |    NULL |     NULL |
    +---------+----------+
    1 row in set, 2 warnings (0.000 sec)

    警告を確認しましょう:

    SHOW WARNINGS;

    結果:

    +---------+------+---------------+
    | Level   | Code | Message       |
    +---------+------+---------------+
    | Warning | 1365 | Division by 0 |
    | Warning | 1365 | Division by 0 |
    +---------+------+---------------+

    非数値引数

    数値以外の引数を指定するとどうなるかの例を次に示します。

    SELECT LOG2('Dog');

    結果:

    +-------------+
    | LOG2('Dog') |
    +-------------+
    |        NULL |
    +-------------+
    1 row in set, 2 warnings (0.000 sec)

    警告を見てみましょう:

    SHOW WARNINGS;

    結果:

    +---------+------+-----------------------------------------+
    | Level   | Code | Message                                 |
    +---------+------+-----------------------------------------+
    | Warning | 1292 | Truncated incorrect DOUBLE value: 'Dog' |
    | Warning | 1365 | Division by 0                           |
    +---------+------+-----------------------------------------+

    ヌル引数

    LOG2() nullを返します 引数がnullの場合 :

    SELECT LOG2(null);

    結果:

    +------------+
    | LOG2(null) |
    +------------+
    |       NULL |
    +------------+

    引数がありません

    LOG2()を呼び出す 引数の数が間違っているか、引数がない場合、エラーが発生します:

    SELECT LOG2();

    結果:

    ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LOG2'

    そして:

    SELECT LOG2(10, 2);

    結果:

    ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LOG2'

    1. Postgresクエリウィンドウのパラメータを使用してアドホックSQLをテストする方法

    2. エラー:ローカルデータの読み込みが無効になっています-これはクライアント側とサーバー側の両方で有効にする必要があります

    3. Oracle 18cの新機能:パーティショニングのオンライン変更

    4. Rails:FATAL-ユーザーのピア認証に失敗しました(PG ::Error)