在 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 還是不等於 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)

更新於: 2020 年 6 月 20 日

6K+ 閱讀量

啟動你的 職業生涯

完成課程獲得認證

入門
廣告
© . All rights reserved.