mysql數值函數


1.abs(x)函數:

  返回x的絕對值。

  例:

mysql> select abs(-0.8),abs(0.8);
+-----------+----------+
| abs(-0.8) | abs(0.8) |
+-----------+----------+
| 0.8 | 0.8 |
+-----------+----------+
1 row in set (0.00 sec)

2.ceil(x)函數:

  返回大於x的最小整數。

  例: 

mysql> select ceil(-0.8),ceil(0.8);
+------------+-----------+
| ceil(-0.8) | ceil(0.8) |
+------------+-----------+
| 0 | 1 |
+------------+-----------+
1 row in set (0.00 sec)

3.floor(x)函數:

  返回小於x的最大整數。

  例: 

mysql> select floor(-0.8),floor(0.8);
+-------------+------------+
| floor(-0.8) | floor(0.8) |
+-------------+------------+
| -1 | 0 |
+-------------+------------+
1 row in set (0.00 sec)

4.mod(x,y)函數:

  返回x/y的模。

  例:

mysql> select mod(15,10),mod(1,11),mod(null,10);
+------------+-----------+--------------+
| mod(15,10) | mod(1,11) | mod(null,10) |
+------------+-----------+--------------+
| 5 | 1 | NULL |
+------------+-----------+--------------+
1 row in set (0.00 sec)

5.rand()函數:

  返回0~1內的隨機值。

  例:

mysql> select rand(),rand();
+--------------------+----------------------+
| rand() | rand() |
+--------------------+----------------------+
| 0.6240175670236513 | 0.005198088479412802 |
+--------------------+----------------------+
1 row in set (0.00 sec)

mysql> select ceil(100*rand()),ceil(100*rand());
+------------------+------------------+
| ceil(100*rand()) | ceil(100*rand()) |
+------------------+------------------+
| 16 | 76 |
+------------------+------------------+
1 row in set (0.00 sec)

6.round(x,y)函數:

  返回函數x的四舍五入的有y位小數的值。

  例:

mysql> select round(1.1),round(1.888,2);
+------------+----------------+
| round(1.1) | round(1.888,2) |
+------------+----------------+
| 1 | 1.89 |
+------------+----------------+
1 row in set (0.00 sec)

7.truncate(x,y)函數:

  返回數字x截斷為y位小數的結果。

  例:  

mysql> select round(1.235,2),truncate(1.235,2);
+----------------+-------------------+
| round(1.235,2) | truncate(1.235,2) |
+----------------+-------------------+
| 1.24 | 1.23 |
+----------------+-------------------+
1 row in set (0.00 sec)

注意:

  truncate和round的區別在於truncate僅僅是截斷,而不進行四舍五入。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM