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

OracleのABS()関数

    Oracleでは、ABS() 関数は引数の絶対値を返します。

    絶対値は、符号に関係なく、実数の非負の値です。方向を考慮せずに、数直線上にあるゼロからの距離を表します。

    構文

    ABS() 関数の構文は次のようになります:

    ABS(n)

    nの場所 任意の数値データ型、または暗黙的に数値データ型に変換できる任意の非数値データ型にすることができます。

    この関数は、引数の数値データ型と同じデータ型を返します。

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

    SELECT ABS(-7)
    FROM DUAL;

    結果:

       ABS(-7) 
    __________ 
             7 

    -7の絶対値 7です 。

    これは、正の7を渡した場合に得られる結果とまったく同じです。 :

    SELECT 
        ABS(7),
        ABS(-7)
    FROM DUAL;

    結果:

       ABS(7)    ABS(-7) 
    _________ __________ 
            7          7 

    ヌル値

    nullを渡す ABS()nullを返します :

    SET NULL 'null';
    
    SELECT ABS(null)
    FROM DUAL;

    結果:

       ABS(NULL) 
    ____________ 
            null 

    デフォルトでは、SQLclおよびSQL * Plusは、SQL SELECTの結果としてnull値が発生するたびに空白を返します。 声明。

    ただし、SET NULLは使用できます 返される別の文字列を指定します。ここでは、文字列nullを指定しました 返却する必要があります。

    引数の数が正しくありません

    ABS()を呼び出す 引数を渡さないとエラーが返されます:

    SELECT ABS()
    FROM DUAL;

    結果:

    Error starting at line : 1 in command -
    SELECT ABS()
    FROM DUAL
    Error at Command Line : 1 Column : 8
    Error report -
    SQL Error: ORA-00909: invalid number of arguments
    00909. 00000 -  "invalid number of arguments"
    *Cause:    
    *Action:

    また、間違った数の引数を渡すと、エラーが発生します:

    SELECT ABS(1, 2)
    FROM DUAL;

    結果:

    Error starting at line : 1 in command -
    SELECT ABS(1, 2)
    FROM DUAL
    Error at Command Line : 1 Column : 8
    Error report -
    SQL Error: ORA-00909: invalid number of arguments
    00909. 00000 -  "invalid number of arguments"
    *Cause:    
    *Action:

    1. SQLで外部キーを使用してテーブルを作成する方法

    2. SQLServerの復元モードからデータベースをオンラインにする方法

    3. Oracleの空の文字列

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