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

PostgreSQLでのDiv()のしくみ

    PostgreSQLでは、div() 関数は、最初の引数を2番目の引数で割った整数の商を返します。

    構文

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

    div(y numeric, x numeric)

    仕組みの例を次に示します。

    SELECT div(12, 3);

    結果:

    4

    この場合、12を3で割ると、結果は4になります。

    その他の部門

    同じ番号にさらにいくつかの部門があります。

    SELECT 
      div(12, 1),
      div(12, 2),
      div(12, 3),
      div(12, 4);

    結果:

     div | div | div | div
    -----+-----+-----+-----
      12 |   6 |   4 |   3

    フラクショナル結果

    この関数は整数の商を返すため、小数は結果から省略されます。

    SELECT div(12, 5);

    結果:

    2

    12を5で割った値は実際には2.4ですが、この関数は小数部分を返さないため、2になります。

    丸めも行われていないようです。たとえば、9を5で割ると1.8になりますが、div() 1を返します(2に切り上げられません)。

    SELECT div(9, 5);

    結果:

    1

    したがって、trunc()を適用するように動作します。 (またはおそらくfloor()round()ではなく、結果に またはceiling()

    ゼロ除算

    数値をゼロで割ろうとすると、エラーが発生します。

    SELECT div(12, 0);

    結果:

    ERROR: division by zero

    ただし、ゼロを別の数値で割ると、ゼロになります。

    SELECT div(0, 12);

    結果:

    0

    1. Android-JobSchedulerのsetPeriodicは機能しません

    2. PowerShellとSQLDiagnosticManagerを組み合わせて、SQLServerの監視を自動化します

    3. Java Oracle localhost接続エラー(ORA-12505)

    4. 表スペースSYSMGMTDATAがグリッド・インフラストラクチャ管理リポジトリ(MGMTDB)でいっぱいです