<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 9.3\. 數學函數和操作符 PostgreSQL為許多類型提供了數學操作符。 對于那些沒有標準的數學傳統的類型(比如日期/時間類型), 我們在隨后的章節里描述實際的行為。 [Table 9-2](#calibre_link-2084)顯示了可用的數學操作符。 **Table 9-2\. 數學操作符** | 操作符 | 描述 | 例子 | 結果 | | --- | --- | --- | --- | | `+` | 加 | `2 + 3` | `5` | | `-` | 減 | `2 - 3` | `-1` | | `*` | 乘 | `2 * 3` | `6` | | `/` | 除(整數除法將截斷結果) | `4 / 2` | `2` | | `%` | 模(求余) | `5 % 4` | `1` | | `^` | 冪(指數運算) | `2.0 ^ 3.0` | `8` | | `&#124;/` | 平方根 | `&#124;/ 25.0` | `5` | | `&#124;&#124;/` | 立方根 | `&#124;&#124;/ 27.0` | `3` | | `!` | 階乘 | `5 !` | `120` | | `!!` | 階乘(前綴操作符) | `!! 5` | `120` | | `@` | 絕對值 | `@ -5.0` | `5` | | `&` | 二進制 AND | `91 & 15` | `11` | | `&#124;` | 二進制 OR | `32 &#124; 3` | `35` | | `#` | 二進制 XOR | `17 # 5` | `20` | | `~` | 二進制 NOT | `~1` | `-2` | | `&lt;&lt;` | 二進制左移 | `1 &lt;&lt; 4` | `16` | | `&gt;&gt;` | 二進制右移 | `8 &gt;&gt; 2` | `2` | 位操作符只能用于整數類型,而其它的操作符可以用于全部數值類型。 位操作符還可以用于位串類型`bit`和`bit varying`, 如[Table 9-10](#calibre_link-2085)所示。 [Table 9-3](#calibre_link-2086)顯示了可用的數學函數。在該表中, `dp`表示`double precision`。 這些函數中有許多都有多種不同的形式,區別是參數不同。除非特別指明, 任何特定形式的函數都返回和它的參數相同的數據類型。處理`double precision` 數據的函數大多數是在宿主系統的C庫的基礎上實現的;因此, 精度和數值范圍方面的行為是根據宿主系統而變化的。 **Table 9-3\. 數學函數** | 函數 | 返回類型 | 描述 | 例子 | 結果 | | --- | --- | --- | --- | --- | | ``abs(```_x_`) | (與輸入相同) | 絕對值 | `abs(-17.4)` | `17.4` | | ``cbrt(```dp`) | `dp` | 立方根 | `cbrt(27.0)` | `3` | | ``ceil(```dp` 或 `numeric`) | (與輸入相同) | 不小于參數的最小的整數 | `ceil(-42.8)` | `-42` | | ``ceiling(```dp` 或 `numeric`) | (與輸入相同) | 不小于參數的最小整數(`ceil`的別名) | `ceiling(-95.3)` | `-95` | | ``degrees(```dp`) | `dp` | 把弧度轉為角度 | `degrees(0.5)` | `28.6478897565412` | | ``div(```y` `numeric`, `x` `numeric`) | `numeric` | integer quotient of `y`/`x` | `div(9,4)` | `2` | | ``exp(```dp` 或 `numeric`) | (與輸入相同) | 自然指數 | `exp(1.0)` | `2.71828182845905` | | ``floor(```dp` 或 `numeric`) | (與輸入相同) | 不大于參數的最大整數 | `floor(-42.8)` | `-43` | | ``ln(```dp` 或 `numeric`) | (與輸入相同) | 自然對數 | `ln(2.0)` | `0.693147180559945` | | ``log(```dp` 或 `numeric`) | (與輸入相同) | 以 10 為底的對數 | `log(100.0)` | `2` | | ``log(```b` `numeric`, `x` `numeric`) | `numeric` | 以`b`為底數的對數 | `log(2.0, 64.0)` | `6.0000000000` | | ``mod(```y`, `x`) | (與參數類型相同) | `y`/`x`的余數(模) | `mod(9,4)` | `1` | | ``pi()`` | `dp` | "π" 常量 | `pi()` | `3.14159265358979` | | ``power(```a` `dp`, `b` `dp`) | `dp` | `a`的`b`次冪 | `power(9.0, 3.0)` | `729` | | ``power(```a` `numeric`, `b` `numeric`) | `numeric` | `a`的`b`次冪 | `power(9.0, 3.0)` | `729` | | ``radians(```dp`) | `dp` | 把角度轉為弧度 | `radians(45.0)` | `0.785398163397448` | | ``random()`` | `dp` | 0.0 到 1.0 之間的隨機數 | `random()` | | ``round(```dp` 或 `numeric`) | (與輸入相同) | 圓整為最接近的整數 | `round(42.4)` | `42` | | ``round(```v` `numeric`, `s` `int`) | `numeric` | 圓整為`s` 位小數 | `round(42.4382, 2)` | `42.44` | | ``setseed(```dp`) | `void` | 為隨后的`random()`調用設置種子( -1.0 到 1.0 之間,包含) | `setseed(0.54823)` | | ``sign(```dp` 或 `numeric`) | (與輸入相同) | 參數的符號(-1, 0, +1) | `sign(-8.4)` | `-1` | | ``sqrt(```dp` 或 `numeric`) | (與輸入相同) | 平方根 | `sqrt(2.0)` | `1.4142135623731` | | ``trunc(```dp` 或 `numeric`) | (與輸入相同) | 截斷(向零靠近) | `trunc(42.8)` | `42` | | ``trunc(```v` `numeric`, `s` `int`) | `numeric` | 截斷為`s`位小數 | `trunc(42.4382, 2)` | `42.43` | | ``width_bucket(```op` `numeric`, `b1` `numeric`, `b2` `numeric`, `count` `int`) | `int` | 返回一個桶,這個桶是在一個有`count`個桶, 上界為`b1`下界為`b2`的等深柱圖中 `operand`將被賦予的那個桶。 | `width_bucket(5.35, 0.024, 10.06, 5)` | `3` | | ``width_bucket(```op` `dp`, `b1` `dp`, `b2` `dp`, `count` `int`) | `int` | 返回一個桶,這個桶是在一個有`count`個桶, 上界為`b1`下界為`b2`的等深柱圖中 `operand`將被賦予的那個桶。 | `width_bucket(5.35, 0.024, 10.06, 5)` | `3` | 最后,[Table 9-4](#calibre_link-2087)顯示了可用的三角函數。 所有三角函數都使用類型為`double precision` 的參數和返回類型。 三角函數參數用弧度來表達。反函數的返回值也是用弧度來表達的。 參閱上面的單元轉換函數``radians()`` 和``degrees()``。 **Table 9-4\. 三角函數** | 函數 | 描述 | | --- | --- | | ``acos(```_x_`) | 反余弦 | | ``asin(```_x_`) | 反正弦 | | ``atan(```_x_`) | 反正切 | | ``atan2(```_y_`, `_x_`) | `_y_`/`_x_`的反正切 | | ``cos(```_x_`) | 余弦 | | ``cot(```_x_`) | 余切 | | ``sin(```_x_`) | 正弦 | | ``tan(```_x_`) | 正切 |
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看