首頁 > 資料庫 > mysql教程 > 在 MySQL 中,CEILING() 和 FLOOR() 函數與 ROUND() 函數有何不同?

在 MySQL 中,CEILING() 和 FLOOR() 函數與 ROUND() 函數有何不同?

WBOY
發布: 2023-09-07 10:25:02
轉載
1554 人瀏覽過

在 MySQL 中,CEILING() 和 FLOOR() 函数与 ROUND() 函数有何不同?

CEILING() 函數傳回不小於 X 的最小整數值。請考慮以下範例 –

mysql> Select CEILING(3.46);
+---------------+
| CEILING(3.46) |
+---------------+
|             4 |
+---------------+
1 row in set (0.00 sec)  

mysql> Select CEILING(-6.43);
+----------------+
| CEILING(-6.43) |
+----------------+
|             -6 |
+----------------+
1 row in set (0.02 sec)
登入後複製

FLOOR() 函數傳回不大於 X 的最大整數值。請考慮以下範例 –

mysql> Select FLOOR(-6.43);
+--------------+
| FLOOR(-6.43) |
+--------------+
|           -7 |
+--------------+
1 row in set (0.00 sec)
 
mysql> Select FLOOR(3.46);
+-------------+
| FLOOR(3.46) |
+-------------+
|           3 |
+-------------+
1 row in set (0.00 sec)
登入後複製

ROUND() 函數傳回 X 四捨五入到最接近的整數。如果提供了第二個參數 D,則函數傳回四捨五入到 D 位小數的 X。 D 必須為正數,否則小數點右邊的所有數字將會被刪除。考慮以下範例-

mysql>SELECT ROUND(5.693893);
+---------------------------------------------------------+
|                    ROUND(5.693893)                      |
+---------------------------------------------------------+
|                           6                             |
+---------------------------------------------------------+
1 row in set (0.00 sec)  

mysql>SELECT ROUND(5.693893,2);
+---------------------------------------------------------+
|                   ROUND(5.693893,2)                     |
+---------------------------------------------------------+
|                          5.69                           |
+---------------------------------------------------------+
1 row in set (0.00 sec)
登入後複製

從上面的定義和範例中,我們可以觀察到這三個函數之間的以下差異-

  • ROUND() 函數將數字向上或向下捨去取決於第二個參數D 和數字本身(D 小數位後的數字>=5 或否)。
  • FLOOR() 函數將數字向零捨入,並且始終向下捨去。
  • CEILING()函數將數字四捨五入,遠離零,並且永遠向上。
mysql> Select ROUND(1.415,2),FLOOR(1.415),CEILING(1.415);
+----------------+--------------+----------------+
| ROUND(1.415,2) | FLOOR(1.415) | CEILING(1.415) |
+----------------+--------------+----------------+
|           1.42 |            1 |              2 |
+----------------+--------------+----------------+
1 row in set (0.00 sec)
登入後複製

以上是在 MySQL 中,CEILING() 和 FLOOR() 函數與 ROUND() 函數有何不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板