mysql 中可用的數學函式很多,此處整理幾個常見的函式。
1、round函式 四捨五入
round有兩個過載函式。
round(x)round(x)例項:round(x,d)
mysql> select round(1.65) as out_put1,引數x為負數:round(1.55) as out_put2,
round(1.45) as out_put3;
+----------+----------+----------+
| out_put1 | out_put2 | out_put3 |
+----------+----------+----------+
| 2 | 2 | 1 |
+----------+----------+----------+
mysql> select round(-1.65) as out_put1,對於負數的處理,我們可以先將其絕對值四捨五入,再在前面加上負號。round(-1.55) as out_put2,
round(-1.45) as out_put3;
+----------+----------+----------+
| out_put1 | out_put2 | out_put3 |
+----------+----------+----------+
| -2 | -2 | -1 |
+----------+----------+----------+
round(x,d)例項:
mysql> select round(-1.65,1) as out_put1,round(x,d),x指要處理的數,d是指保留幾位小數。round(-1.554,2) as out_put2,
round(-1.45,1) as out_put3;
+----------+----------+----------+
| out_put1 | out_put2 | out_put3 |
+----------+----------+----------+
| -1.7 | -1.55 | -1.5 |
+----------+----------+----------+
2、ceil函式 向上取整
返回大於等於該引數的最小整數。
ceil(x)參與是正數:
mysql> select ceil(1.52) as out_put1,對1.52和1.002,大於等於其的最小整數是2,而1.00有等於它的整數1。ceil(1.002) as out_put2,
ceil(1.00) as out_put3;
+----------+----------+----------+
| out_put1 | out_put2 | out_put3 |
+----------+----------+----------+
| 2 | 2 | 1 |
+----------+----------+----------+
引數是負數:
mysql> select ceil(-2.52) as out_put1,記住結果是返回大於等於該引數的最小整數即可。ceil(-1.002) as out_put2,
ceil(-1.00) as out_put3;
+----------+----------+----------+
| out_put1 | out_put2 | out_put3 |
+----------+----------+----------+
| -2 | -1 | -1 |
+----------+----------+----------+
3、floor函式 向下取整
返回小於等於該引數的最大整數
floor(x)例項:
mysql> select floor(9.99) as out_put1,4、truncate函式 截斷floor(-9.99) as out_put2;
+----------+----------+
| out_put1 | out_put2 |
+----------+----------+
| 9 | -10 |
+----------+----------+
將值截斷為指定的小數字數,而不管後面是什麼都不要。
truncate(x,d)例項:
mysql> select truncate(1.65,1) as out_put1,第二個引數表示保留小數點後幾位。truncate(1.999,1) as out_put2;
+----------+----------+
| out_put1 | out_put2 |
+----------+----------+
| 1.6 | 1.9 |
+----------+----------+
5、mod函式 取模
mod(n,m)也就是進行模運算,返回 n 除以 m 的餘數。
例項:
mysql> select mod(10,3);假如被除數是負數:+-----------+
| mod(10,3) |
+-----------+
| 1 |
+-----------+
mysql> select mod(-10,3);假如兩個引數都是負數:+------------+
| mod(-10,3) |
+------------+
| -1 |
+------------+
mysql> select mod(-10,-3);關於模運算,有乙個說法:被除數是正數,結果是正數;被除數是負數,結果就是負數。+-------------+
| mod(-10,-3) |
+-------------+
| -1 |
+-------------+
還可以使用乙個公式來計算結果:n - n/m*m。
原文:
MySQL數學函式
1.取餘函式 mod 12,5 2 2.四捨五入 round 1.354,1 1.4 truncate 1.354,1 1.3 3.十六進製制轉換函式 hex love 6c6f7665 unhex 6c6f7665 love 4.字元長度 char length date 4 5.連線函式 con...
數學基礎 隸屬函式
隸屬函式,也稱為歸屬函式或模糊元函式,是模糊集合中會用到的函式,是一般集合中指示函式的一般化。指示函式可以說明乙個集合中的元素是否屬於特定子集合。一元素的指示函式的值可能是0或是1,而一元素的隸屬函式會是0到1之間的數值,表示元素屬於某模糊集合的 真實程度 degree of truth 例如質數為...
MySQL函式 數學函式
數學函式主要用於處理數字,包括整型 浮點數等。函式 作用 1 abs x 返回x的絕對值 select abs 1 返回1 2 ceil x ceiling x 返回大於或等於x的最小整數 select ceil 1.5 返回2 3 floor x 返回小於或等於x的最大整數 select floo...